我想有点像这样的列表:jQuery的inArray()总是返回-1
<ul>
<li>L</li>
<li>S</li>
<li>XXS</li>
<li>XS</li>
<li>XL</li>
<li>L</li>
</ul>
使用JavaScript和jQuery拿到衣服尺码的正确顺序 我的尝试是这样的:
var mylist = jQuery('#filter-size .mana-list');
var listitems = mylist.children('li').get();
listitems.sort(function (a, b) {
var sizes = new Array();
sizes = ["XXXS", "XXS", "XS", "S", "S-M", "S-L", "M", "M-L", "L", "L-XL", "XL", "XXL", "XXXL"];
var compA = jQuery(a).text().toUpperCase();
var compB = jQuery(b).text().toUpperCase();
var asize = jQuery.inArray(compA, sizes);
var bsize = jQuery.inArray(compB, sizes);
return (asize > bsize) ? -1 : (asize < bsize) ? 1 : 0;
})
我的问题是,inArray()函数总是返回-1 我做错了什么?
(注:我在usign jQuery的 “没有冲突” 模式)
谢谢大家提前
你可以发布'console.log(compA)'和'console.log(asize)' – ilanco
'inArray'的输出并不总是为我返回'-1' ..什么版本的jQuery? http://jsfiddle.net/jNnTG/ –
它不是-1 ...看到这里:http://jsfiddle.net/qjxpX/ –