在我的html表单中,我有一组单选按钮
<form action="receive.php" method="post">
<input type="radio" name="rad" value="one" /> One <br />
<input type="radio" name="rad" value="two" /> Two <br />
<input type="radio" name="rad" value="three" /> Three <br />
<input type="submit" value="submit" />
</form>
我有一个没有选中单选按钮的场景。在这种情况下,我的服务器端php接收输入值为false
。我想要做的是将false更改为null
或undefined
。那可能吗?非常感谢任何帮助。
答案 0 :(得分:6)
您可以这样做:
<form action="receive.php" method="post">
<input type="radio" name="rad" value="one" /> One <br />
<input type="radio" name="rad" value="two" /> Two <br />
<input type="radio" name="rad" value="three" /> Three <br />
<input type="hidden" name="rad" value="null" />
<input type="submit" value="submit" />
</form>
现在,如果您没有选中任何单选按钮,您将获得“null”输入值,但请记住"null"
与PHP中的NULL
不同。
答案 1 :(得分:1)
根据定义,单选按钮没有空值。
但是你可以添加一个单选按钮:
<form action="receive.php" method="post">
<input type="radio" name="rad" value="one" /> One <br />
<input type="radio" name="rad" value="two" /> Two <br />
<input type="radio" name="rad" value="three" /> Three <br />
<input type="radio" name="rad" value="null" /> null <br />
<input type="submit" value="submit" />
</form>
并将其用作您需要的null。
答案 2 :(得分:1)
可以使用.php中的if / else语句来完成:
$radioInput = false;
if (!isset($_POST['rad'])){
$radioInput = NULL;
}
else {
$radioInput = $_POST['rad'];
}
答案 3 :(得分:0)
如果没有选择单选按钮,请使用javascript返回 null ,在“提交”上点击:
var radioChecked=0;
var radios=document.getElementsByName("rad");
for(var i=0;i<radios.length;i++)
{ if(radios[i].checked){
radioChecked=radioChecked+1;
} }
if(radioChecked==0)
return null;
希望它能解决你的问题。