是否可以检查复选框是否已在其值内勾选?

时间:2011-10-06 13:29:05

标签: php html

为了节省我对其余代码进行大量编辑,我想让复选框像文本框一样。

我有以下文本框,如果一个数字大于0,那么它会将项目添加到一个篮子中。

<input type="textbox"
       value="<? echo $item[qty]; ?>" 
       name="<? echo $productid."_".$product_quantity[id]."_".$product_option[id]; ?>" 
/>

如何使复选框的行为方式相同?即如果它被勾选,它的值等于1,因此将其添加到我的购物篮中。如果它仍然未被攻击,那么它的值等于0,因此被忽略。

<input type="checkbox"
       value="<? echo $item[qty]; ?>"
       name="<? echo $productid."_".$product_quantity[id]."_".$product_option[id]; ?>"
/>

我在页面上有几个复选框。

2 个答案:

答案 0 :(得分:0)

您可以从

更改复选框值的值
value="<? echo $item[qty]; ?>"

value="1"

然后如果选中它,那么在提交时它将自动存储1作为值

已编辑:

在php代码中提交后,按照更新问题的方式进行操作

if(isset($_POST['checkbox name']))
{
    $item[qty] = 1;
}
else
{
    $item[qty] = 0;
}

但这只会在$ item数组的值中进行更改,尽管您的复选框保留了该值。

答案 1 :(得分:0)

将值从value="<? echo $item[qty]; ?>"更改为value="1"

在你的行动中,即wishlist.php:

if(isset($_POST["name_of_checkbox"])) {
   //It means check box has been ticked
   $myvalue = 1;
} else {
   //It means check box was not ticked
   $myvalue = 0;
}

HTH


这是问题的另一种方法,也许这就是你需要的。

我会介绍一个隐藏字段,它将存储/发布0或1值。我们将使用复选框绑定一个事件,该复选框将更新隐藏输入的值。

<input name="my_cb" id="my_cb" type="checkbox" value="1" />
<input type="hidden" name="my_cb_hidden" id="my_cb_hidden" value="" />

<script type="text/javascript">
$("#my_cb").click(function() { 
    if($("#my_cb").is(":checked")){
         $("#my_cb_hidden").val($(this).val());  
    } else {
         $("#my_cb_hidden").val(0);    
    } 
    alert($("#my_cb_hidden").val());    
});