我正在尝试将下拉列表的索引设置为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>
// 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);
});
答案 0 :(得分:14)
$ddlHeader.find('option:first').prop('selected', 'selected');
更新
$('select').prop('selectedIndex', 0);
或者使用更多代码但更灵活:
$('select').each(function() {
$(this).find('option:first').prop('selected', 'selected');
});
答案 1 :(得分:4)
答案 2 :(得分:2)
<强> UPD 强>:
我困惑selectedIndex
和价值。因此,只有在明确要求选择value = 0时,此解决方案才有效:
使用val(0)
代替
$check.click(function() {
$ddls.prop("disabled", true);
$ddlHeader.prop("disabled", !this.checked);
$ddlHeader.val(0);
});
答案 3 :(得分:-1)
//这行代码适合我。
$(function(){$("select").each(function (i) {
$(this).prop("selectedIndex", 0);
});
});