天天看點

jQuery下拉清單框操作和排序

對<select></select>标簽中的option進行排序,option具有兩個屬性,一個是text一個是value

由于text一般都是展示的内容,并不是我們想要進行的排序字段,而value是隐藏的。

是以我們可以通過value來進行排序。

PS:在用下拉清單框進行選中一個item時,用$(this).selected=true不如用

$(this).attr('selected',true)好,因為在某些情況下,前者說不定就不起中用了的,

我是有親身體驗的。

排序js如下(引入jQuery)

xx=$('#complete option').sort(function(a,b){  
    var aText = $(a).val();  
    var bText = $(b).val();  
    if(aText>bText) return 1;  
    if(aText<bText) return -1;  
    return 0;  
}) ; 
	$('#complete').empty();
	$('#complete').append(xx);
           

以下内容為copy過來的,留着自己以後看看...

<script language="javascript">
        $(document).ready(function() {
        //綁定下拉框change事件,當下來框改變時調用 SelectChange()方法
        $("#selectID").change(function() { SelectChange(); }); 
        })
        function SelectChange() {
        //擷取下拉框選中項的text屬性值
        var selectText = $("#selectID").find("option:selected").text();
        alert(selectText);
        //擷取下拉框選中項的value屬性值
        var selectValue = $("#selectID").val();
        alert(selectValue);
        //擷取下拉框選中項的index屬性值
        var selectIndex = $("#selectID").get(0).selectedIndex;
        alert(selectIndex);
        擷取下拉框最大的index屬性值
        var selectMaxIndex = $("#selectID option:last").attr("index");
        alert(selectMaxIndex);
    }

    function aa() {
        //設定下拉框index屬性為5的選項 選中
        $("#selectID").get(0).selectedIndex = 5;  
    }
    function bb() {
        //設定下拉框value屬性為4的選項 選中
        $("#selectID").val(4);
    }
    function cc() {
        //設定下拉框text屬性為5的選項 選中
         $("#selectID option[text=5]").attr("selected", "selected");

         $("#yyt option:contains('5')").attr("selected", true);
    }
    function dd() {
        //在下拉框最後添加一個選項
        $("#selectID").append("<option value='7'>7</option>");
    }
    function ee() {
        //在下拉框最前添加一個選項
        $("#selectID").prepend("<option value='0'>0</option>")
    }
    function ff() {
        //移除下拉框最後一個選項
        $("#selectID option:last").remove();
    }

    function gg() {
        //移除下拉框 index屬性為1的選項
        $("#selectID option[index=1]").remove();
    }

    function hh() {
        //移除下拉框 value屬性為4的選項
        $("#selectID option[value=4]").remove();
    }
    function ii() {
        //移除下拉框 text屬性為5的選項
        $("#selectID option[text=5]").remove();
    }    
    </script>