我有一个星期五的下午时刻,我真的很努力,这些项目我多么想整理!jQuery的TinySort排序和数据放置属性
我有将通过从两个下拉列表中选择要过滤列表。一个是属性,另一个是价值。然后我想根据两个下拉列表对列表进行排序。
因此,例如,用户可以用30的值,那么我想排序与相匹配的项目第一升序排列,其次是无可比拟的项目中进行选择attr4。即下面这个列表:
<ul>
<li data-attr1="10" data-attr2="20" data-attr3="30" data-attr4="40" data-attr5="50">Option 1</li>
<li data-attr1="20" data-attr2="30" data-attr3="40" data-attr4="50" data-attr5="10">Option 2</li>
<li data-attr1="30" data-attr2="40" data-attr3="50" data-attr4="10" data-attr5="20">Option 3</li>
<li data-attr1="40" data-attr2="50" data-attr3="10" data-attr4="20" data-attr5="30">Option 4</li>
<li data-attr1="50" data-attr2="10" data-attr3="20" data-attr4="30" data-attr5="40">Option 5</li>
</ul>
会再看看这样的:
<ul>
<li data-attr1="50" data-attr2="10" data-attr3="20" data-attr4="30" data-attr5="40">Option 5</li>
<li data-attr1="10" data-attr2="20" data-attr3="30" data-attr4="40" data-attr5="50">Option 1</li>
<li data-attr1="20" data-attr2="30" data-attr3="40" data-attr4="50" data-attr5="10">Option 2</li>
<li data-attr1="40" data-attr2="50" data-attr3="10" data-attr4="20" data-attr5="30">Option 4</li>
<li data-attr1="30" data-attr2="40" data-attr3="50" data-attr4="10" data-attr5="20">Option 3</li>
</ul>
我可以做整个列表排序很容易使用:
$('ul li').tsort({ data: attribute, order: 'asc'});
,但我遇到麻烦匹配的项目前面的不匹配的项目。我试着使用:
$('ul li').tsort({ data: test, order: 'asc', place: 'start' });
无济于事。任何人都可以发现我做错了什么吗?任何帮助将不胜感激 - 有一个伟大的星期五!谢谢!
Darren
我结束了不使用TinySort和去分裂的一个列表分为多个阵列,排序他们我想要的,然后替换列表项前连接起来将你的第一选择。谢谢! – iamdarrenhall 2012-08-11 08:28:17