Spi*_*r84 2 html checkbox jquery
例如,我有几个复选框.
<input type="checkbox" value="27" name="option_value[12][]" id="option_value_27" class="filtered option_value" cat="121">
<input type="checkbox" value="27" name="option_value[12][]" id="option_value_27" class="filtered option_value" cat="141">
Run Code Online (Sandbox Code Playgroud)
两个问题:
cat
属性声明是否有效?cat
在单击按钮时访问属性值?不,cat
不是有效属性,可以使用HTML5 data-*
属性和jQuery data
方法:
<input type="checkbox" value="27" name="option_value[12][]" id="option_value_27" class="filtered option_value" data-cat="121">
Run Code Online (Sandbox Code Playgroud)
$('#button').click(function(){
var cat = $('#option_value_27').data('cat');
})
Run Code Online (Sandbox Code Playgroud)
或attr
方法:
var cat = $('#option_value_27').attr('data-cat');
Run Code Online (Sandbox Code Playgroud)
或者,如果您不使用jQuery,您还可以使用dataset
属性:
var cat = document.getElementById('option_value_27').dataset.cat;
Run Code Online (Sandbox Code Playgroud)
另请注意,ID必须是唯一的.如果要获取所有cat
属性的值,可以使用以下map
方法:
var cats = $('.filtered').map(function(){
return this.dataset.cat
// or $(this).attr('data-cat')
}).get()
// console.log(cats)
Run Code Online (Sandbox Code Playgroud)
现在cats
是data-cat
属性的所有值的数组.