ホームページ > ウェブフロントエンド > jsチュートリアル > IE8 の Jquery は、select で選択された値を取得してバックグラウンドにポストし、error_jquery を報告します。

IE8 の Jquery は、select で選択された値を取得してバックグラウンドにポストし、error_jquery を報告します。

WBOY
リリース: 2016-05-16 16:42:47
オリジナル
1451 人が閲覧しました

通常、select を取得するために jquery を使用する場合、通常は次のように使用します。

<select id='a'> 
<option selected='selected' value='1'> 
</select> 
var selectedValue = $("#a").val();
ログイン後にコピー

IE8 以外では、selectedValue の値は「1」、selectedValue の type は「string」です。

IE8 では、selectedValue の値は ["1"]、selectedValue の type は "objectg" です。

selectedValue ポストをバックグラウンドに直接送信すると、送信プロセス中に selectedValue が IE8 では配列として扱われ、バックグラウンドで認識できないため、バックグラウンドがそれを受信したときにエラーが報告されます。

解決されたコードは次のとおりです:

selectedValue = typeof selectedValue == "object" &#63; selectedValue[0] : selectedValue;
ログイン後にコピー

このように、selectedValue は文字列です。

さらに、これは他の問題を引き起こします:

var a = selectedValue.trim();
ログイン後にコピー

このコードは IE8 では実行できません。上記の理由も考えられます。

次のコードを使用して、機能することを確認します。

$.trim(selectedValue);
ログイン後にコピー
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート