我有一个注册表格,其中有性别广播选项,显示男性或女性。在HTML中没有选中,因为我希望用户检查一个。像这样:
<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>
我通过jquery ajax提交数据。奇怪的是,al输入的帖子显示
[性别] =&gt;男性,如果您提交的表格中没有选中2个选项
那么,如果它永远不会发布为空,我如何验证呢?
*如果未选择任何选项,我想返回错误,因此会强制用户选择正确的性别。
答案 0 :(得分:0)
这样做的一个非常快捷的方法是默认在UI中进行选择。这样可以确保该值非空,因为您无法“取消选中”单选按钮。
<input type="radio" name="gender" id="optionsRadios1" value="female" checked> Female
编辑:
编写自己的提交功能,并将其绑定到提交按钮的onclick()
function submit() {
if (!$("#optionsRadios1").prop("checked") && !$("#optionsRadios2").prop("checked")) {
alert("please select a gender");
}
else {
//Whatever you do to submit
}
}
答案 1 :(得分:0)
以下代码将在客户端验证您的表单 此验证仅允许在选择其中一个性别时提交表单。如果没有提交单选按钮,则会显示警告消息并停止将表单重定向到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>