我有幾個選擇哪一個相互依賴,如果我選擇一個值在另一個被刪除,並且以前的值被添加到其他人,我如何可以添加以前的值由JQuery選擇?然後按字母順序排序?將值添加到一個選擇和排序
2
A
回答
2
不能確定排序(不要太很難搞清楚),但是你可以在<option>
元素追加到像這樣的列表:
$("#myselect").append(
$("<option>").prop("selected", "selected").attr("value", "OptionValue").text("OptionText")
);
到prop()
的第一個電話是唯一的,如果您需要該元素將成爲列表中的選定元素,否則您可以省略它。
編輯:我說幹就幹,制定了分類部分:
var elems = [];
$("#sortable > option").each(function() {
elems.push({ key: $(this).val(), value: $(this).text() });
});
elems.sort(function (a, b) {
if (a.value < b.value) return -1;
if (a.value > b.value) return 1;
return 0;
});
$("#sortable").empty();
$.each(elems, function (idx, item) {
$("#sortable").append(
$("<option>").attr("value", item.key).text(item.value)
);
});
1
我想你不能真正「秩序」的DOM元素。
對此,最好的方法是可以讀出應該將元素添加到數組中的所有元素,將新值添加到數組中,然後對其進行排序。在這個過程中DOM元素應該被刪除。之後,您將按照所需順序再次將新訂購的元素添加到DOM。
2
由於用於將值代碼是可用的,在這裏是在選取
function sortOptions()
{
var arr = [];
$("#myselect option").each(function(){
arr.push($(this).html());
});
$('#myselect').empty();
arr.sort();
var html='';
for(var i=0;i<arr.length;i++)
{
html+='<option>' + arr[i] + '</option>'
}
$('#myselect').html(html);
}
相關問題
- 1. MYSQL選擇加入,排序和空值
- 2. 將一個布爾值添加到'選擇新的'Linq查詢
- 3. 如何將最初的「選擇」值添加到一個DropDownList
- 4. Jquery將值添加到選擇
- 5. 排序行和選擇一個
- 6. 添加選擇多個值
- 7. 將選擇添加到Combobox
- 8. 添加多個值到多個選擇jquery插件(選擇)
- 9. 從下拉框添加和選擇一個選項值
- 10. 選擇排序不排序第一個值
- 11. 添加選擇動畫到一個UIButton
- 12. 添加數據到一個選擇
- 13. SQL排序和選擇一個最接近的值
- 14. 添加另一個選擇
- 15. 將唯一的XML元素值添加到選擇列表
- 16. 添加排名前1和排序依據來選擇多個連接聲明
- 17. 將選項添加到選擇並在Internet Explorer上選擇一個
- 18. 動態地將值添加到選擇框,附加到主體
- 19. 根據選擇的值將活動類添加到多個div
- 20. 如何將多個文件選擇器的值添加到jtable
- 21. 將選項添加到CodeIgniter中選擇
- 22. 添加另一個排序選項到下拉列表
- 23. 將數值從多個選擇移動到另一個選擇
- 24. 如何加入選擇和加入選擇到一個查詢
- 25. MySQL根據選擇添加,分組和排序
- 26. 玩2.0 - Java:將選定的值添加到@選擇字段
- 27. 將選擇性文件從一個分支添加到其他
- 28. 將兩組選擇器添加到一箇中
- 29. d3選擇將元素添加到另一個
- 30. 如何將一個按鈕選擇添加到case語句
'selected'排序值應'丙代碼()''未ATTR()'。對 ?順便說一句+1代碼不錯 – Jashwant
它應該?似乎與'attr'一起工作正常。有什麼關於該屬性的東西可以用'prop'處理得更好? – kprobst
這是一個問題暨建議。我不確定,所以我加了'對嗎?'。 [prop](http://api.jquery.com/prop/)應該在處理'properties'時替換'attr()' – Jashwant