-1

私は持っている:

<select id="number" name="number">
<option value=""></option>
<option value="1">01</option>
<option value="2" selected="selected">02</option>
<option value="3">03</option>
<option value="4" selected="selected">04</option>
<option value="5">05</option>
</select>

次にjQueryを使用して、たとえば次のように使用します。

$('#number').val(1);

しかし、これは次の値を追加します - 1 そして今私は持っています:

<select id="number" name="number">
<option value=""></option>
<option value="1" selected="selected">01</option>
<option value="2" selected="selected">02</option>
<option value="3">03</option>
<option value="4" selected="selected">04</option>
<option value="5">05</option>
</select>

私が使用しなければならないもの:

$('#number').val(1);

他のすべての値を選択できないことを確認しますか? だから私はしたい - 新しい val を設定すると、他のすべての値をリセットできます。それぞれをリセットに使用するかもしれませんが、どのように?私は知っています-これは multiselect = false である必要がありますが、これは私のコードではありません-この jQuery を使用する必要があります。

4

1 に答える 1

2

複数選択を使用していますか?あなたが追加した HTML は、そうではないことを示しているからです。複数選択で作業していない場合、複数の HTML はselected="selected"意味がありません。

複数選択で作業している場合、設定他の選択をクリアする.val() 必要があります。(デモ)。奇妙なブラウザーでそうでない場合は、選択を手動でリセットしてみてください。

$('#number option').prop('selected', false).val(1);

現在の選択をクリアしたくないselected場合は、プロパティを手動で設定することを検討してください。.val()

$('#number option[value=1]').prop('selected', true);

デモ

于 2012-07-16T09:34:48.047 に答える