我有一个复选框数组(与php一起使用),我想使用ajax从复选框中创建这些值的东西,我想从每个复选框中获取值并发出ajax请求。
我有这个:
$("#checked").each(function(i, val){
var k = $(i).value();
console.log(k);
});
但没有成功。
HTML:
<input id="checado" type="checkbox" name="ids[]" value="78">
<input id="checado" type="checkbox" name="ids[]" value="79">
<input id="checado" type="checkbox" name="ids[]" value="80">
<input id="checado" type="checkbox" name="ids[]" value="81">
答案 0 :(得分:1)
只需对HTML进行少量更改,即可使用以下JavaScript(demo):
<input class="checado" type="checkbox" name="ids[]" value="78"> 78<br/>
<input class="checado" type="checkbox" name="ids[]" value="79"> 79<br/>
<input class="checado" type="checkbox" name="ids[]" value="80"> 80<br/>
<input class="checado" type="checkbox" name="ids[]" value="81"> 81<br/>
<button id='Submit'>Submit</button>
<script>
$('#Submit').on('click', function() {
var values = []
$('.checado:checked').each(function () {
var e = $(this);
values.push(e.val());
});
alert(values);
});
</script>
有关正在进行的操作的更详细分类,复选框具有已检查状态和值。 jQuery Selector $('.checado:checked')
将只返回选中的复选框(当你有多个元素时应该使用class
而只有当你识别单个元素时id
,浏览器和CSS才会显得懒惰关于这一点,但不正确的使用将产生不可预测的结果)。另一个变化是通过jQuery方法.val()
获取值,这有助于隐藏输入类型和浏览器特定方式的值。
答案 1 :(得分:0)
您正在使用jQuery,它使用自己的.val()
方法。将.value()
替换为.val()
。