今天一个同事不太会多选框的取值和赋值的问题,我帮他解决了一下,不想自己想的朋友可以参考一下。
获取checkBox的值,checkBox的html如下
<input type="checkbox" value="1" name="sProblem">check1<input type="checkbox" value="2" name="sProblem">check2<input type="checkbox" value="3" name="sProblem">check3<input type="checkbox" value="4" name="sProblem">check4
获取选中的checkbox的val,并合成为一个字符串以逗号隔开。
function getTheCheckBoxValue(){ ???????var test = $("input[name=‘sProblem‘]:checked"); ???????var checkBoxValue = ""; ????????test.each(function(){ ???????????checkBoxValue1 += $(this).val()+","; ???????}) ???????checkBoxValue = checkBoxValue.substring(0,checkBoxValue.length-1);
设置传过来的checkbox的值并选中。传过来的是1,2,3,说明选中的是value为1,2,3的三个checkbox。如果前面不是123这种数字,是其他的字符也是
支持的。
???function setTheCheckBoxValue(){ ???var checkBox = "1,2,3"; ???var checkBoxArray = checkBox.split(","); ???for(var i=0;i<checkBoxArray.length;i++){ ???$("input[name=‘sProblem‘]").each(function(){ ???if($(this).val()==checkBoxArray[i]){ ???$(this).attr("checked","checked"); ???} ???}) ???} ???}
设置的这个方法是有缺陷的,如果checkbox过多不建议用,可以将each换成for循环来代替,减少无用的循环。
jquery,js,checkbox多选框复选框取值和赋值
原文地址:https://www.cnblogs.com/Violety/p/9420161.html