-2
看到下面的代碼jQuery的排序是不是孩子標籤工作
source = $("<root><item desc='SQL'/><item desc='Microsoft'/><item desc='Action Script'><item desc='Java script'></root>")
//WAY 1: This way is not working...
source.children().sort(function(a, b)
{
var aText = $(a).attr("desc").toLowerCase();
var bText = $(b).attr("desc").toLowerCase();
if(aText == bText)
return 0;
return aText > bText ? 1 : -1;
});
alert(source[0].outerHTML);
//WAY 2: This is working...
var temp = source.children();
temp.sort(function(a, b)
{
var aText = $(a).attr("desc").toLowerCase();
var bText = $(b).attr("desc").toLowerCase();
if(aText == bText)
return 0;
return aText > bText ? 1 : -1;
});
source = $("<root/>");
source.append(temp);
alert(source[0].outerHTML);
方法1不工作,方法2是工作好。爲什麼我應該將孩子分配給另一個變量然後進行排序,將它們分配回原始變量?這是正確和有效的方式嗎?
你可以試試這個FIDDLE ....
你們爲什麼不投票呢?這個問題不清楚還是沒有顯示任何研究工作? – user10
在meta.so上看到你的qn http://meta.stackexchange.com/questions/158160/banned-to-ask-questions-in-stack-overflow - 我已經投了幾個帖子,但不是這個一:你需要說出你從第一種方式所期望的以及你所看到的,否則你就是在問太多的人試圖回答問題。你很幸運有你的答案。嘗試修復qn,我會加註它。解僱之前不應該很久。 –