如果选择 jquery,为什么 ASP.net 下拉列表不默认为 0
Why does the ASP.net dropdownlist does not default to 0 if chosen jquery is used
我使用的是 Chosen Jquery,这导致下拉列表无法更新。
这是HTML:
<select name="ctl00$BodyPlaceHolder$ddl1" id="ddl1" class="chose-select le">
<option value="Select a State">Select a State</option>
<option value="Alabama">AL</option>
<option value="Alaska">AK</option>
<option value="Arizona">AZ</option>
</select>
JavaScript 将所选索引设置为 0:
function setSelectedIndex(dropdownlist, selVal) {
var ddl1 = document.getElementById(dropdownlist);
if (selVal < ddl1.selectedIndex) {
ddl1.selectedIndex = selVal;
$(ddl1).val(0).trigger('chosen:updated');
}
}
这就解决了一个问题。问题是一旦函数将所选索引设置为 0,它会将 "Select an Option" 显示为 0 索引而不是默认的第一个选项。
知道如何解决这个问题吗?
尝试这样的事情:
<select name="ctl00$BodyPlaceHolder$ddl1" id="ddl1" class="chose-select le">
<option value="" disabled selected>Select a State</option>
<option value="Alabama">AL</option>
<option value="Alaska">AK</option>
<option value="Arizona">AZ</option>
</select>
我不得不删除 .val(0)
,它工作正常。
$(ddl1).trigger('chosen:updated');
只需添加 data-placeholder="Choose a State"
即可
<select name="ctl00$BodyPlaceHolder$ddl1" id="ddl1" data-placeholder="Choose a State" class="chose-select le">
<option value="Alabama">AL</option>
<option value="Alaska">AK</option>
<option value="Arizona">AZ</option>
</select>
我使用的是 Chosen Jquery,这导致下拉列表无法更新。
这是HTML:
<select name="ctl00$BodyPlaceHolder$ddl1" id="ddl1" class="chose-select le">
<option value="Select a State">Select a State</option>
<option value="Alabama">AL</option>
<option value="Alaska">AK</option>
<option value="Arizona">AZ</option>
</select>
JavaScript 将所选索引设置为 0:
function setSelectedIndex(dropdownlist, selVal) {
var ddl1 = document.getElementById(dropdownlist);
if (selVal < ddl1.selectedIndex) {
ddl1.selectedIndex = selVal;
$(ddl1).val(0).trigger('chosen:updated');
}
}
这就解决了一个问题。问题是一旦函数将所选索引设置为 0,它会将 "Select an Option" 显示为 0 索引而不是默认的第一个选项。
知道如何解决这个问题吗?
尝试这样的事情:
<select name="ctl00$BodyPlaceHolder$ddl1" id="ddl1" class="chose-select le">
<option value="" disabled selected>Select a State</option>
<option value="Alabama">AL</option>
<option value="Alaska">AK</option>
<option value="Arizona">AZ</option>
</select>
我不得不删除 .val(0)
,它工作正常。
$(ddl1).trigger('chosen:updated');
只需添加 data-placeholder="Choose a State"
即可
<select name="ctl00$BodyPlaceHolder$ddl1" id="ddl1" data-placeholder="Choose a State" class="chose-select le">
<option value="Alabama">AL</option>
<option value="Alaska">AK</option>
<option value="Arizona">AZ</option>
</select>