1

ドロップダウンのインデックスを0に設定しようとしています。例に示されているように、ユーザーがチェックボックスのチェックを外しているが、どういうわけか無視している場合...

$ddlHeader.attr('selectedIndex', 0);

http://jsfiddle.net/abuhamzah/9YM4P/

// html:

Header:
<br /><input id="check" type="checkbox" name="approve" />
<select id="myddl" name="myddl">
    <option value="0">select me</option>
    <option value="1">One</option>
    <option value="2">Twooo</option>
    <option value="3">Three</option>
</select> 

</ p>

// js

var $ddls = $('select');
var $check = $('#check');
var $ddlHeader = $("#myddl"); 

$ddls.prop("disabled", true); 

$check .click(function() {
    $ddls.prop("disabled", true); 
    $ddlHeader.prop("disabled", !this.checked);
    $ddlHeader.attr('selectedIndex', 0);

});
4

4 に答える 4

14
$ddlHeader.find('option:first').prop('selected', 'selected');

更新されたフィドル

アップデート:

$('select').prop('selectedIndex', 0);

または、より多くのコードを使用しますが、より柔軟です。

$('select').each(function() {
    $(this).find('option:first').prop('selected', 'selected');
});
于 2012-05-09T01:42:21.020 に答える
4

.prop以下のように使用してください

$ddlHeader.prop('selectedIndex', 0);

更新されたフィドル

于 2012-05-09T01:42:36.707 に答える
2

UPD

私は混乱selectedIndexして価値があります。したがって、このソリューションは、値=0を明示的に選択する場合にのみ機能します。

val(0)代わりに使用してください

$check.click(function() {
    $ddls.prop("disabled", true); 
    $ddlHeader.prop("disabled", !this.checked);
    $ddlHeader.val(0);
});

http://jsfiddle.net/9YM4P/1/

于 2012-05-09T01:42:23.983 に答える
-1

//このコード行は私のために機能します。 $(function(){$("select").each(function (i) { $(this).prop("selectedIndex", 0); }); });

于 2015-10-13T16:54:29.270 に答える