gpt4 book ai didi

javascript - 如何在Javascript中设置排序后的默认值?

转载 作者:行者123 更新时间:2023-11-28 01:42:38 24 4
gpt4 key购买 nike

我正在按此代码对下拉列表进行排序。

var bindSortselect= function() {
$("select").each(function() {
$(this).html($(this).children("option").sort(function (a, b) {
console.log(a.text);
console.log(b.text);
return a.text.toUpperCase() == b.text.toUpperCase() ? 0 : a.text.toUpperCase() < b.text.toUpperCase() ? -1 : 1
}));
});
};

但是我希望在排序后默认选择特定项目(由用户)。例如:如果我将上面的代码应用于所有“选择”标签,它将对其进行排序,然后设置默认值,就像我选择“DZD”从下拉列表中排序,因此排序后“DZD”仍保持选中状态。

<select id="id_currency" name="currency">
<option value="AFN"></option>
<option value="DZD"></option>
<option value="ARS"></option>
<option value="AMD"></option>
<option value="AWG"></option>
<option value="AUD"></option>
...
<option value="BND"></option>
</select>

请回复。提前致谢

最佳答案

在排序之前,将 select 标记的 value 存储在变量中,

var ch = $("select").val(); //fetch the value of select

排序后,将其设置回值

$("select").val(ch);  //set the value to select

最后,

var bindSortselect= function() {
var ch = $("select").val(); //fetch the value of select
$("select").each(function() {
$(this).html($(this).children("option").sort(function (a, b) {
return a.text.toUpperCase() == b.text.toUpperCase() ? 0 : a.text.toUpperCase() < b.text.toUpperCase() ? -1 : 1
}));
});
$("select").val(ch); //set the value to select
};

关于javascript - 如何在Javascript中设置排序后的默认值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20697367/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com