多選框向后台傳值,多選框的回顯,對多選框的各種操作


1.多選框的回顯:

js:$(
    function(){
    var checkBoxAll =$("input[name^='checkbox_']");//獲取前綴為checkbox_的所有多選框對象
    var checkArray=${list};//獲取多選框需要回顯得對應的值集合
    console.info("checkArray=",checkArray);
    for(var i=0;i<checkArray.length;i++){//
                       //獲取所有復選框對象的value屬性,然后,用checkArray[i]和他們匹配,如果有,則說明他應被選中
                        $.each(checkBoxAll,function(j,checkbox){
                            //獲取復選框的value屬性
                           var checkValue=$(checkbox).val();
                            if(checkArray[i]==checkValue){
                                $(checkbox).attr("checked",true);
                          }
                       })
                   }
    });

2.多選框往后台傳值接收:

 

request.getParameterValues("c1");他返回的是一個String[],其中c1是多選框的name,由於多選框name是一樣的,所以可以獲取到所有選中的多選框的值
另附所有對多選框的操作(轉載):

//注意: 操作checkbox的checked,disabled屬性時jquery1.6以前版本用attr,1.6以上(包含)建議用prop
 2 
 3     //1、根據id獲取checkbox
 4     $("#cbCheckbox1");
 5 
 6     //2、獲取所有的checkbox
 7     $("input[type='checkbox']");//or
 8     $("input[name='cb']");
 9 
10     //3、獲取所有選中的checkbox
11     $("input:checkbox:checked");//or
12     $("input:[type='checkbox']:checked");//or
13     $("input[type='checkbox']:checked");//or
14     $("input:[name='ck']:checked");
15 
16     //4、獲取checkbox值
17     //用.val()即可,比如:
18     $("#cbCheckbox1").val();
19 
20 
21     //5、獲取多個選中的checkbox值
22     var vals = [];
23     $('input:checkbox:checked').each(function (index, item) {
24         vals.push($(this).val());
25     });
26     
27     //6、判斷checkbox是否選中(jquery 1.6以前版本 用  $(this).attr("checked"))
28     $("#cbCheckbox1").click(function () {
29         if ($(this).prop("checked")) {
30             alert("選中");
31         } else {
32             alert("沒有選中");
33         }
34     });
35 
36     //7、設置checkbox為選中狀態
37     $('input:checkbox').attr("checked", 'checked');//or
38     $('input:checkbox').attr("checked", true);
39 
40     //8、設置checkbox為不選中狀態
41     $('input:checkbox').attr("checked", '');//or
42     $('input:checkbox').attr("checked", false);
43 
44     //9、設置checkbox為禁用狀態(jquery<1.6用attr,jquery>=1.6建議用prop)
45     $("input[type='checkbox']").attr("disabled", "disabled");//or
46     $("input[type='checkbox']").attr("disabled", true);//or
47     $("input[type='checkbox']").prop("disabled", true);//or
48     $("input[type='checkbox']").prop("disabled", "disabled");
49 
50     //10、設置checkbox為啟用狀態(jquery<1.6用attr,jquery>=1.6建議用prop)
51     $("input[type='checkbox']").removeAttr("disabled");//or
52     $("input[type='checkbox']").attr("disabled", false);//or
53     $("input[type='checkbox']").prop("disabled", "");//or
54     $("input[type='checkbox']").prop("disabled", false);


 1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 2 <html xmlns="http://www.w3.org/1999/xhtml">
 3 <head>
 4     <title></title>
 5 </head>
 6 <body>
 7     <h3>jQuery操作checkbox
 8     </h3>
 9     <input type="checkbox" id="cbCheckbox1" value="1" />
10     <input type="checkbox" value="2" />
11     <input type="checkbox" disabled="disabled" value="3" />
12     <input type="checkbox" value="4" />
13     <input type="checkbox" disabled="true" value="5" />
14     <br />
15     <input type="button" id="btnDisabled" value="禁用" onclick="fn_disabled();" />
16     <input type="button" id="Button1" value="啟用" onclick="fn_enable();" /><br />
17     <input type="button" id="Button2" value="獲取選中的值" onclick="getCheckedValues();" /><br />
18     <input type="button" id="Button3" value="選中第二個" onclick="checkedSecond();" />
19     <input type="button" id="Button4" value="取消選中第二個" onclick="uncheckedSecond();" /><br />
20 </body>
21 </html>
22 <script src="js/jquery-1.9.1.min.js" type="text/javascript"></script>
23 <script type="text/javascript">
24 
25     function fn_disabled() {
26         //$("input[type='checkbox']").attr("disabled", "disabled");
27         //$("input[type='checkbox']").attr("disabled", true);
28         $("input[type='checkbox']").prop("disabled", true);
29         //  $("input[type='checkbox']").prop("disabled", "disabled");
30     }
31 
32     function fn_enable() {
33         //  $("input[type='checkbox']").removeAttr("disabled");
34         // $("input[type='checkbox']").attr("disabled", false);
35         // $("input[type='checkbox']").prop("disabled","");
36         $("input[type='checkbox']").prop("disabled", false);
37     }
38 
39     //獲取選中的 checkbox的值
40     function getCheckedValues() {
41         var arr = [];
42         $("input[type='checkbox']:checked").each(function (index, item) {//
43             arr.push($(this).val());
44         });
45         alert(arr);
46     }
47 
48     function checkedSecond() {
49         // $("input[type='checkbox']:eq(1)").prop("checked", "checked");
50         $("input[type='checkbox']:eq(1)").prop("checked", true);
51     }
52 
53     function uncheckedSecond() {
54         //  $("input[type='checkbox']:eq(1)").prop("checked", "");
55         $("input[type='checkbox']:eq(1)").prop("checked", false);
56     }
57 
58     $("#cbCheckbox1").click(function () {
59         if ($(this).prop("checked")) {//jquery 1.6以前版本 用  $(this).attr("checked")
60             alert("選中");
61         } else {
62             alert("沒有選中");
63         }
64     });
65 
66 </script>


HTML
  1. <input type="checkbox" value="1" name="sProblem">check1  
  2. <input type="checkbox" value="2" name="sProblem">check2  
  3. <input type="checkbox" value="3" name="sProblem">check3  
  4. <input type="checkbox" value="4" name="sProblem">check4  
獲取選中的checkbox的val,並合成為一個字符串以逗號隔開。
  1. function getTheCheckBoxValue(){  
  2.         var test = $("input[name='sProblem']:checked");  
  3.         var checkBoxValue = "";   
  4.         test.each(function(){  
  5.             checkBoxValue1 += $(this).val()+",";  
  6.         })  
  7.         checkBoxValue = checkBoxValue.substring(0,checkBoxValue.length-1);  
  8. }

設置獲取到的值給checkbox賦值

  1. function setTheCheckBoxValue(){  
  2.         var checkBox = "1,2,3";  
  3.         var checkBoxArray = checkBox.split(",");  
  4.         for(var i=0;i<checkBoxArray.length;i++){  
  5.             $("input[name='sProblem']").each(function(){  
  6.                 if($(this).val()==checkBoxArray[i]){  
  7.                     $(this).attr("checked","checked");  
  8.                 }  
  9.             })  
  10.         }  
  11.     }  







免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM