簡體   English   中英

用Javascript排序后如何設置默認值?

[英]How to Set the default value after sorting in Javascript?

我正在按此代碼對下拉列表進行排序。

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
};

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM