0

以下に説明するような選択リストがあります。

<select id="edit-type" class="form-select ajax-processed valid" name="type">
   <option selected="selected" value="text">Text</option>
   <option value="select">Drop Down List</option>
   <option value="file">Single File Submission</option>
   <option value="license">License</option>
</select>

この select 要素を見つけるために jQuery を使用したいのですが、name 属性を使用してそれを見つけたいと思います (変更される可能性があるため、id または class 属性ではありません)。私は次のことを試しましたが、うまくいきません:

$(':select[name="type"]').live('change', function() {....

私は JavaScript を初めて使用するので、ここで基本的な何かが欠けていると思います。これはうまくいくと思いました。:select[name="type"]セレクターとして使えないの?

4

2 に答える 2

0

:セレクターの前を削除

$('select[name="type"]').live('change', function() {....

また

$(':input[name="type"]').live('change', function() {.... // if you have any other input with the same it will select that too. SO better to go with first option. 

また、これが下にあることを確認してください$(document).ready(function(){...});

見る:

あなたの質問について更新するだけです:input

:入力

ドキュメントから

:input セレクターは、基本的にすべてのフォーム コントロールを選択します。:input は jQuery 拡張機能であり、CSS 仕様の一部ではないため、:input を使用するクエリは、ネイティブ DOM の querySelectorAll() メソッドによって提供されるパフォーマンス向上を利用できません。:input を使用して要素を選択するときに最高のパフォーマンスを実現するには、最初に純粋な CSS セレクターを使用して要素を選択し、次に .filter(":input") を使用します。

于 2013-06-14T20:52:59.363 に答える
0

以下のコードが役立つと思います:

次を使用して、名前で要素を見つけることができます。

   $('select[name="type"]').live('change', function() 

選択したオプションを取得するには、次を使用できます。

$('select[name="type"] option:selected').text();
$('select[name="type"] option:selected').val(
于 2013-06-14T21:13:52.677 に答える