1

我正在尝试完成一项简单的任务(但对我来说并不简单)。

我有一个表格,但这个复选框有问题。

    <input type="checkbox" name="b"  
<?php if (isset($_POST[b])) echo "value='y'"; else echo "value='n'"; ?>/>

我不确定我是否使用了正确的,但它对我不起作用。

所以基本上我想要的值将是input如果复选框被选中,否则如果复选框未被选中,它将始终是。byn

4

5 回答 5

4

这不是复选框的工作方式。

checked属性存在时检查它。

<input type="checkbox" name="a" value="a" checked /> Checked
<input type="checkbox" name="a" value="a" /> NOT Checked

所以你想使用

<input type="checkbox" name="a" value="a" <?php echo isset($_POST['b']) ? "checked" : ""; ?>/>

现在如果$_POST['b']设置,复选框将被选中。

另外,你有$_POST[b]. b应该用引号引起来。它应该是$_POST['b']

于 2012-06-17T05:32:40.007 回答
2

您必须使用两个条件,一个是显示选中/未选中,第二个是显示 y/n

 <input type="checkbox" name="b" <?php echo (isset($_POST['b'])?"value='y'":"value='n'")?> 
 <?php echo (isset($_POST['b'])?"checked":"") ?>  />
于 2012-06-17T08:13:27.857 回答
0

测试代码!

<form method="post">
   <input type="checkbox" name="b" <?php if (isset($_POST['b'])) echo "value='y'"; else echo "value='n'"; ?>/>
   <input type="submit" name="asd" value="asd">
</form>

因此,请使用以下内容

<?php if (isset($_POST['b'])) echo "value='y'"; else echo "value='n'"; ?>
于 2012-06-17T05:27:08.640 回答
0

这对我有用:
    首先:给复选框一个默认值
    然后:只有在选中该框时才分配所需的值。

    <input type="hidden" name="b" value="n">
    <input type="checkbox" name="b" value="y" >
于 2015-04-08T03:52:11.670 回答
0

*部署批准:

        <input type="radio" name="dep_approval_status" value="Approved"
            <?php 
                if ($deploy['dep_approval_status'] === "Approved")
                {
                    echo ' checked'; 
                }

            ?> 
        /> Yes, approved 

        <input type="radio" name="dep_approval_status" value="Not Approved"
            <?php 
                if ($deploy['dep_approval_status'] === "Not Approved")
                {
                    echo ' checked';
                }
            ?> 
        /> Not Approved
于 2018-01-25T04:24:32.810 回答