jQuery 获取多选框的值及多选框中文的函数
DOM结构
我的多选框的dom结构,都是下面这种的.都是基础知识,不做过多阐述.
<labelclass="input_checkbox"> <inputtype="checkbox"name="sell_area"vlaue="0"> <span>甘肃</span> </label> <labelclass="input_checkbox"> <inputtype="checkbox"name="sell_area"vlaue="1"> <span>青海</span> </label> <labelclass="input_checkbox"> <inputtype="checkbox"name="sell_area"vlaue="2"> <span>陕西</span> </label> <labelclass="input_checkbox"> <inputtype="checkbox"name="sell_area"vlaue="3"> <span>宁夏</span> </label>
使用这种方法的优点是,点击文字就可以选择多选框了.并且可以使用CSS来美化整个样式.
JS代码
返回已经选中的多选框的值函数
functionreturnCheckboxVal(name){ vardata=""; $('input:checkbox[name="'+name+'"]:checked').each(function(){ data+=$(this).attr("vlaue")+","; }); returndata.substring(0,data.length-1); }
通过这个函数,可以按照我们的需要,返回相应name值的多选框选中的项目的值,以1,2,3的方式返回
好,这里需要解释一下了,为什么我使用$(this).attr("vlaue")这种方式来获取.
其实我从搜索引擎找到的是$(this).val()的方式获取的.但是我很奇怪,我返回的值全部是on.
可能和我使用的是jquery2.0的版本有关系,但具体是什么原因,我没有深究.
返回已经选中的多选框的项目名称
如上,可能我需要返回的是甘肃,青海,陕西,宁夏这样的项目名.当然,这个也是可以做到的.
不过,这个严重依赖我上面的DOM结构,如果结构不相同的话,需要做适当的修改的.
functionreturnCheckboxItem(name){ vardata=""; $('input:checkbox[name="'+name+'"]:checked').each(function(){ data+=$(this).siblings('span').html()+","; }); returndata.substring(0,data.length-1); }
总结
网上搜索来的代码不一定都是正确的.但大体思路应该不会错.
其中的差异可能是标点符号(中英文)\缩进(中文全角空格)\或者是使用的JQ版本不相同.
所以找到的代码不能使用的时候,仔细排查一下,或许用更原始的方法可能会解决问题.
以上所述是小编给大家介绍的jQuery获取多选框的值及多选框中文的函数的相关知识,希望能够帮助到大家。