Php 单选按钮显示值即使没有选中任何按钮如何验证?
我有一张登记表,上面有性别选择,显示男性或女性。在HTML中,没有一个被选中,因为我希望用户选中一个。像这样:Php 单选按钮显示值即使没有选中任何按钮如何验证?,php,html,forms,radio,Php,Html,Forms,Radio,我有一张登记表,上面有性别选择,显示男性或女性。在HTML中,没有一个被选中,因为我希望用户选中一个。像这样: <label class="radio"> <input type="radio" name="gender" id="optionsRadios1" value="female">Female </label> <label class="radio"> <input type="radio" name="gend
<label class="radio">
<input type="radio" name="gender" id="optionsRadios1" value="female">Female
</label>
<label class="radio">
<input type="radio" name="gender" id="optionsRadios2" value="male">Male
</label>
我通过jQueryAjax提交数据。奇怪的是,al输入的post显示
[性别]=>如果您提交的表单中未选中任何两个选项,则为男性
那么,如果它从不为空,我如何验证它呢
*如果没有选择任何选项,我想返回一个错误,因此它会强制用户选择正确的性别。一种非常快速的方法是默认在UI中进行选择。这确保该值非空,因为您不能取消选中单选按钮
<input type="radio" name="gender" id="optionsRadios1" value="female" checked> Female
以下代码将在客户端验证您的表单
此验证仅允许在选择某一性别时提交表单。如果没有提交任何单选按钮,那么它将显示一条警告消息,并停止表单重定向到action.php
<form name='whatever' onsubmit='return validate();' method='POST' action='action.php'>
<label class="radio">
<input type="radio" name="gender" id="optionsRadios1" onchange='validate()' value="female"> Female
</label>
<label class="radio">
<input type="radio" name="gender" id="optionsRadios2" onchange='validate()' value="male"> Male
</label>
<input type='submit' value='submit'>
</form>
<script type='text/javascript'>
function validate(){
var feObj=document.getElementById("optionsRadios1");
var maleObj=document.getElementById("optionsRadios2");
if (feObj.checked){
return true;
}
if (maleObj.checked){
return true;
}
alert ("Please select a gender");
return false;
}
</script>
问题显然出在您的ajax代码中,而不是上面的HTML。这是真的,但不是我想要的。因为我想强制用户选择一个性别,所以如果没有选择,我想返回一条错误消息…你能写下你自己的onclick函数并在那里进行检查吗?参见示例代码。是。。jquey不可能吗。。但问题是。。是否没有其他方法可以删除javascript?如果用户没有选择任何内容。。仍然会发布错误的var。。我正在搜索一种方法来发布空的帖子,这样我就可以看到用户没有选择一个选项,就像在www.facebook.com上一样。是的,您可以在服务器端和客户端验证代码。您可以在客户端使用javascript/jquery进行验证,在服务器端使用php或其他服务器端脚本语言进行验证。要用jquery验证上述代码,只需将maleObj.checked或feObj.checked替换为$optionsRadios2.attr'checked'。为了检查是否没有从无线电选项中选择任何内容,您必须验证整个表单。我已经为您编辑了答案。我想这就是你要找的。
<form name='whatever' onsubmit='return validate();' method='POST' action='action.php'>
<label class="radio">
<input type="radio" name="gender" id="optionsRadios1" onchange='validate()' value="female"> Female
</label>
<label class="radio">
<input type="radio" name="gender" id="optionsRadios2" onchange='validate()' value="male"> Male
</label>
<input type='submit' value='submit'>
</form>
<script type='text/javascript'>
function validate(){
var feObj=document.getElementById("optionsRadios1");
var maleObj=document.getElementById("optionsRadios2");
if (feObj.checked){
return true;
}
if (maleObj.checked){
return true;
}
alert ("Please select a gender");
return false;
}
</script>