带有Jquery映射功能的Checkbox?

时间:2012-03-28 06:50:33

标签: javascript jquery

我有以下代码,

...

<input type="hidden" name="unchecked"  id="unchecked" value="" />
<?php
    $ind = 1;
    foreach($array as $v){
?>

<input class="checkbox checked" id="checked_<?php echo $ind; ?>" type="checkbox" value="<?php echo $value['id']; ?>"/>

<?php
    $ind++;
    }
?>

...

我想将复选框值存储为隐藏框中的逗号分隔。所以我尝试使用以下jquery,

<script type="text/javascript">
    $(function(){    
        $("input.checked").click(function(){  
            //alert($(this).val());
            $("input#unchecked").val($.map($("input[id^='checked_']"), function( item ) {
                return $(item).val();
            }).join(",")); 
        });
    });  
</script>

当我单击任一复选框时,上面的脚本会存储复选框的所有值。我在这方面做错了什么。善意的建议

1 个答案:

答案 0 :(得分:2)

更改

$("input[id^='checked_']")

$("input[id^='checked_']:checked")

或使用以下内容:

选中已选中的$("input[id^='checked_']").is(':checked')

选择未选中的:$("input[id^='checked_']").not(':checked')