从具有相同类名的一组复选框中获取当前复选框的值

时间:2014-06-27 18:04:59

标签: javascript jquery checkbox

我试图从一组具有相同类名的复选框中获取当前复选框的值,如下所示。但是,jquery代码似乎没有相应地表现出来。任何人都可以帮我解决这个问题吗?

http://jsfiddle.net/m8fdc/2/

HTML

<input type="checkbox" class="checkbox1" value="test"/><br />
<input type="checkbox" class="checkbox1" value="test2"/> <br />
<input type="checkbox" class="checkbox1" value="test3"/> 

JS

$(document).ready(function() {
    //set initial state.

    $('.checkbox1').click(function() {
        if ($(this).is(':checked')) {
            console.log($('.checkbox1').val());
        }
    });
});

非常感谢任何帮助!

谢谢。

3 个答案:

答案 0 :(得分:2)

时:

$('.checkbox1:checked').val()

您在寻找什么?

答案 1 :(得分:1)

尝试使用this处理程序中的click引用来获取当前元素的值,

$('.checkbox1').click(function() {
    if ($(this).is(':checked')) {
        console.log(this.value);
    }
});

DEMO

我可能会建议您在此上下文中使用change事件而不是click事件。另请注意,只有当复选框变为已检查状态时,才会触发更改事件。只需确定哪一个符合您的要求。

DEMO

答案 2 :(得分:-1)

如果你这样做,你正在阅读找到的第一个.checkbox1的值:

console.log($('.checkbox1').val());

在jQuery中的click事件下,您可以直接访问所点击的节点,因此您可以通过this访问它。

您可以使用原生属性并执行:

console.log(this.value);

或将其包装在jQuery中以使用jQuery的函数:

console.log($(this).val());