所以我有一组的复选框被用下面的代码动态创建的:创建上点击事件的数组
<?php foreach($candies as $candy): ?>
<a style="cursor:pointer;" class="candy list-group-item" data-id="<?php echo $candy['candy_id']; ?>" data-toggle="popover" data-placement="top" data-html="true" data-trigger="hover" data-content="<img src='<?php echo $candy['candy_img']; ?>'>"><?php echo $candy['candy_name']; ?></a>
<input type="checkbox" id="<?php echo $candy['candy_id']; ?>" name="<?php echo $candy['candy_name']; ?>" style="display:none;" />
<?php endforeach; ?>
这将导致以下(缩短)代码:
<ul class="list-group">
<a style="cursor:pointer;" class="candy list-group-item" data-id="1" data-toggle="popover" data-placement="top" data-html="true" data-trigger="hover" data-content="<img src='http://www.groovycandies.com/pc/catalog/8992_General.jpg'>" data-original-title="" title="">Raspberry Gummi Bears</a>
<input type="checkbox" id="1" name="Raspberry Gummi Bears" style="display:none;">
<a style="cursor:pointer;" class="candy list-group-item" data-id="2" data-toggle="popover" data-placement="top" data-html="true" data-trigger="hover" data-content="<img src='http://www.groovycandies.com/pc/catalog/candy-runts-5.jpg'>" data-original-title="" title="">Runts</a>
<input type="checkbox" id="2" name="Runts" style="display:none;">
...
</ul>
然后我有javascript,当点击上面的<a>
时,正确的checkbox
被选中或未选中。
<script type="text/javascript">
$(".candy").click(function(){
var id = $(this).data('id');
var checkbox = $("#"+id).prop("checked");
if (checkbox != true) {
$("#"+id).prop("checked", true);
$(this).attr("class","candy list-group-item active");
}
else
{
$("#"+id).prop("checked", false);
$(this).attr("class","candy list-group-item");
}
});
</script>
现在我要提交表单......但在我这样做之前,我想做更多的事情。我无法弄清楚。
我想在PHP我的理解是一个数组:<?php $candies = array(); ?>
,这将创建一个空白阵列。现在,当选中复选框时,我想将复选框的名称添加到数组中。或者当复选框未选中时,将从阵列中删除。我希望在提交表单之前发生这种情况。我怎样才能做到这一点?
使用相同的名称。 。那么你可以访问这个复选框的值为$ candy = $ _ POST ['candy']。这个变量是一个数组,并将只包含已被检查过的复选框值 – sonam