日期:2014-05-16  浏览次数:20408 次

Jquery 如何根据相同的元素进行排序
HTML code

<select>
   <option value="0">不排序</option>
   <option value="1">排序</option>
</select>
<div>
    <ul>
        <li class="colval">张三</li>
        <li>李四</li>
        <li>王麻子</li>
        <li class="colval">干豇豆</li>
        <li>巴倒烫</li>
        <li class="colval">划不着</li>
    </ul>
</div>
如何 选中select的值 然后根据相同的 class 进行排序 把有class="colval" 的元素放在最前面, 求解。



------解决方案--------------------
HTML code
<select onchange="sort(this.value)">
   <option value="0">不排序</option>
   <option value="1">排序</option>
</select>
<div id="dv">
    <ul id="ul">
        <li class="colval">张三</li>
        <li>李四</li>
        <li>王麻子</li>
        <li class="colval">干豇豆</li>
        <li>巴倒烫</li>
        <li class="colval">划不着</li>
    </ul>
</div>

<script type="text/javascript" src="jq.js"></script>
<script type="text/javascript">
    var souceHTML;
    $(function () { souceHTML = $('#dv').html(); });
    function sort(v) {
        if (v == '0') $('#dv').html(souceHTML);
        else $('#ul').prepend($('#ul li.colval'));
    }
</script>