我使用PHP来创建HTML表单 表格有3个单选按钮和一个提交按钮 在表单的初始状态下,没有选中任何单选按钮 如果没有选中单选按钮,我想让表单不被提交 有没有办法做到这一点?我附上了部分PHP代码。
for($i=0; $i<$nChoices; $i++) {
$Text='<input type="radio" name="answer" value="' . $IdChoices[$i] . '"';
$Text.="> ". $Choices[$i] . "</input>";
$choiceoutput.= $Text."<br /><br />";
}
谢谢!
答案 0 :(得分:3)
此javascript可用于简单的客户端验证。 仅在客户端进行验证并不安全 但如果您的目的是查看用户是否实际选择了一个值,那么这样做。否则,需要在php脚本中进行进一步的验证。
<script type="text/javascript">
function validate()
{
var retval = false;
for (var i=0; i < document.myForm.r.length; i++)
{
if (document.myForm.r[i].checked)
{
retval = true;
}
}
return retval;
}
</script>
使其投入使用的简单形式。
<form name="myForm" action="page.php" onsubmit="return validate()" method="post">
<input type="radio" id="r">
<input type="radio" id="r">
<input type="submit" value="ok">
</form>
答案 1 :(得分:2)
您应该使用javascript验证,拦截提交并检查是否选中了某个按钮。 但请记住,您还必须在服务器端验证,因为JS可以被省略。
或者,如果您不关心广泛的浏览器支持 - HTML5支持表单约束验证(https://developer.mozilla.org/en/HTML/HTML5/Forms_in_HTML5)
答案 2 :(得分:0)
<input type="submit" value="Submit" name="B1" disabled="disabled">
以上是“已禁用”提交按钮的示例。一旦用户选中了您希望他们检查的复选框,您就必须使用JavaScript从“提交”按钮中删除disabled =“disabled”属性。
http://www.techchorus.net/disable-and-enable-input-elements-div-block-using-jquery
有一点阅读可以让你更好地理解逻辑! :)