如果选中Javascript,则为每个复选框获取值

时间:2016-04-14 06:55:48

标签: javascript php

我还在学习javascript,我认为这是ez问题,但我无法用我的经验修复它(已经尝试搜索一些来源),这是我的代码

这是一个例子:

PHP

<?php
    <input type="checkbox" checked="checked" value="1" class="box_1">1</label> // checked
    <input type="checkbox" value="2" class="box_1">2</label> //unchecked
    <input type="checkbox" checked="checked" value="3" class="box_1">3</label> // checked
    <input type="checkbox" value="4" class="box_1">4</label> //unchecked
    <input type="checkbox" checked="checked" value="5" class="box_1">5</label> // checked

<input type="button" value="Submit" id="button-price" class="button" />
?>

我尝试按类检查javasript的复选框,(我不能使用名称和ID,因为我使用循环)

我尝试像这样建立条件Javascript:

$('#button-price').bind('click', function() {
    var box = '';
    $(".box_1").each(function(){      // for each checkbox in class box_1(1-5)
        if(this).attr("checked","true"){  // if this checked box is true
            var value = (this.value).toLowerCase();  // take the value 
            box = box + value;   // store to box
        }
    });
});

点击按钮然后点value并存储到框中, 我知道这里有错误if(this).attr("checked","true"){ 应该写什么条件?

2 个答案:

答案 0 :(得分:0)

您可以使用jQuery .prop()方法检查复选框状态:

if ($(this).prop("checked")) { // if this checked box is true
    box += $(this).val().toLowerCase(); // store to box
}

建议(this.value).toLowerCase()可以正常运行,但请不要将jQuery代码与纯javascript混合使用。而不是它,你可以使用上面的解决方案。

答案 1 :(得分:0)

尝试使用prop而不是attr

if($(this).prop('checked')) {
}

希望这有帮助。