這篇文章主要介紹了jQuery 獲取多選框的值及多選框中文的函數(shù)的相關(guān)資料,需要的朋友可以參考下
DOM結(jié)構(gòu)
我的多選框的dom結(jié)構(gòu),都是下面這種的.都是基礎知識,不做過多闡述.
<label class="input_checkbox">
<input type="checkbox" name="sell_area" vlaue="0">
<span>甘肅</span>
</label>
<label class="input_checkbox">
<input type="checkbox" name="sell_area" vlaue="1">
<span>青海</span>
</label>
<label class="input_checkbox">
<input type="checkbox" name="sell_area" vlaue="2">
<span>陜西</span>
</label>
<label class="input_checkbox">
<input type="checkbox" name="sell_area" vlaue="3">
<span>寧夏</span>
</label>
使用這種方法的優(yōu)點是,點擊文字就可以選擇多選框了.并且可以使用CSS來美化整個樣式.
JS代碼
返回已經(jīng)選中的多選框的值函數(shù)
function returnCheckboxVal(name){
var data="";
$('input:checkbox[name="'+name+'"]:checked').each(function(){
data += $(this).attr("vlaue")+",";
});
return data.substring(0,data.length-1);
}
通過這個函數(shù),可以按照我們的需要,返回相應name值的多選框選中的項目的值,以1,2,3的方式返回
好,這里需要解釋一下了,為什么我使用$(this).attr("vlaue")這種方式來獲取.
其實我從搜索引擎找到的是 $(this).val() 的方式獲取的.但是我很奇怪,我返回的值全部是on.
可能和我使用的是 jquery2.0的版本有關(guān)系,但具體是什么原因,我沒有深究.
返回已經(jīng)選中的多選框的項目名稱
如上,可能我需要返回的是甘肅,青海,陜西,寧夏這樣的項目名.當然,這個也是可以做到的.
不過,這個嚴重依賴我上面的DOM結(jié)構(gòu),如果結(jié)構(gòu)不相同的話,需要做適當?shù)男薷牡?
function returnCheckboxItem(name){
var data="";
$('input:checkbox[name="'+name+'"]:checked').each(function(){
data += $(this).siblings('span').html()+",";
});
return data.substring(0,data.length-1);
}
總結(jié)
網(wǎng)上搜索來的代碼不一定都是正確的.但大體思路應該不會錯.
其中的差異可能是標點符號(中英文)\縮進(中文全角空格)\或者是使用的JQ版本不相同.
所以找到的代碼不能使用的時候,仔細排查一下,或許用更原始的方法可能會解決問題.
以上所述是小編給大家介紹的jQuery 獲取多選框的值及多選框中文的函數(shù)的相關(guān)知識,希望能夠幫助到大家。