1. 程式人生 > >用Jquery獲取checkbox多個選項

用Jquery獲取checkbox多個選項

注:$("[name='checkbox'][checked]")這種方式獲取物件是有相容性問題的,但是有時候可以獲取到物件有時候不可以,不知道怎麼回事,從網上搜了另外一種解決方案:$(":checkbox:checked"),這樣就沒問題了!

1,下拉框:

var cc1   = $(".formc select[@name='country'] option[@selected]").text(); //得到下拉選單的選中項的文字(注意中間有空格)

var cc2 = $('.formc select[@name="country"]').val();   //得到下拉選單的選中項的值

var cc3 = $('.formc select[@name="country"]').attr("id"); //得到下拉選單的選中項的ID屬性值

$("#select").empty();//清空下拉框//$("#select").html('');

$("<option value='1'>1111</option>").appendTo("#select")//新增下拉框的option

稍微解釋一下:

1.select[@name='country'] option[@selected] 表示具有name 屬性,

並且該屬性值為'country' 的select元素 裡面的具有selected 屬性的option 元素;

可以看出有@開頭的就表示後面跟的是屬性。

2,單選框:

$("input[@type=radio][@checked]").val();   //得到單選框的選中項的值(注意中間沒有空格)

$("input[@type=radio][@value=2]").attr("checked",'checked'); //設定單選框value=2的為選中狀態.(注意中間沒有空格)

3,複選框:

$("input[@type=checkbox][@checked]").val(); //得到複選框的選中的第一項的值

$("input[@type=checkbox][@checked]").each(function(){ //由於複選框一般選中的是多個,所以可以迴圈輸出

   alert($(this).val());

   });

$("#chk1").attr("checked",'');//不打勾

$("#chk2").attr("checked",true);//打勾

if($("#chk1").attr('checked')==true){} //判斷是否已經打勾

當然jquery的選擇器是強大的. 還有很多方法.

另外我自己也寫過一個jquery的複選框小外掛.嘿嘿.可以參考參考.

http://www.cssrain.cn/demo/jquery-check/checkbox.html

<script src="jquery-1.2.1.js" type="text/javas cript"></script>

<script language="javas cript" type="text/javas cript">

$(document).ready(function(){

$("#selectTest").change(function()

{

       //alert("Hello");

       //alert($("#selectTest").attr("name"));

       //$("a").attr("href","xx.html");

       //window.location.href="xx.html";

       //alert($("#selectTest").val());

       alert($("#selectTest option[@selected]").text());

       $("#selectTest").attr("value", "2");

});

});

</script>

<a href="#">aaass</a>

<!--下拉框-->

<select id="selectTest" name="selectTest">

<option value="1">11</option>

<option value="2">22</option>

<option value="3">33</option>

<option value="4">44</option>

<option value="5">55</option>

<option value="6">66</option>

</select>

var item = $('input[@name=items][@checked]').val();

獲取select被選中項的文字

var item = $("select[@name=items] option[@selected]").text();

select下拉框的第二個元素為當前選中值

$('#select_id')[0].selectedIndex = 1;

radio單選組的第二個元素為當前選中值

$('input[@name=items]').get(1).checked = true;

獲取值:

文字框,文字區域:$("#txt").attr("value");

多選框checkbox:$("#checkbox_id").attr("value");

單選組radio: $("input[@type=radio][@checked]").val();

多組單選按鈕:$("input[@typ=radio][@name=''][@checked]")

下拉框select: $('#sel').val();

控制表單元素:

文字框,文字區域:$("#txt").attr("value",'');//清空內容

                $("#txt").attr("value",'11');//填充內容

多選框checkbox: $("#chk1").attr("checked",'');//不打勾

                $("#chk2").attr("checked",true);//打勾

                if($("#chk1").attr('checked')==undefined) //判斷是否已經打勾

單選組radio: $("input[@type=radio]").attr("checked",'2');//設定value=2的專案為當前選中項

下拉框select: $("#sel").attr("value",'-sel3');//設定value=-sel3的專案為當前選中項

            $("<optionvalue='1'>1111</option><optionvalue='2'> 2222</option>").appendTo("#sel")//新增下拉框的option

            $("#sel").empty();//清空下拉框

獲取一組radio被選中項的值

var item = $('input[@name=items][@checked]').val();

獲取select被選中項的文字

var item = $("select[@name=items] option[@selected]").text();

select下拉框的第二個元素為當前選中值

$('#select_id')[0].selectedIndex = 1;

radio單選組的第二個元素為當前選中值

$('input[@name=items]').get(1).checked = true;

獲取值:

文字框,文字區域:$("#txt").attr("value");

多選框checkbox:$("#checkbox_id").attr("value");

單選組radio: $("input[@type=radio][@checked]").val();

下拉框select: $('#sel').val();

控制表單元素:

文字框,文字區域:$("#txt").attr("value",'');//清空內容

$("#txt").attr("value",'11');//填充內容

多選框checkbox: $("#chk1").attr("checked",'');//不打勾

$("#chk2").attr("checked",true);//打勾

if($("#chk1").attr('checked')==undefined) //判斷是否已經打勾

單選組radio: $("input[@type=radio]").attr("checked",'2');//設定value=2的專案為當前選中項

下拉框select: $("#sel").attr("value",'-sel3');//設定value=-sel3的專案為當前選中項

$("<option value='1'>1111</option><option value='2'>2222</option>").appendTo("#sel")//新增下拉框的option

$("#sel").empty();//清空下拉框