如果未选择无线电,我有一个表单并尝试禁用发布:
function checkForm(obj){
var return_value = true;
var error_msg = 'Some text: '+'\n';
$("input[type='radio']:not(:checked)").each(function() {
error_msg += $(this).next().text() + ", ";
});
if(!return_value)
alert(error_msg);
return return_value;
}
形式:
<form name="test1" method="post" action="result.php" onsubmit="return checkForm(this);">
<span id="q2"><h4>My question</h4></span>
<ul>
<li><input type="radio" name="answer[2]" value="5" />a1</li>
<li><input type="radio" name="answer[2]" value="6" />a2</li>
<li><input type="radio" name="answer[2]" value="7" />a3</li>
<li><input type="radio" name="answer[2]" value="8" />a4</li>
</ul>
</div>
<div><input type="submit" value="Send!" name="submit" class="button" id="start" /></div>
</form>
但没有提示警告,表格已提交。
答案 0 :(得分:4)
如果未选中单选按钮,则应将return_value
设置为false
,因为初始值为true
。
答案 1 :(得分:1)
你可以尝试一下
$('form[name=test1]').submit(function(){
var return_value = false;
var error_msg = 'Some text: '+'\n';
$("input[type='radio']").each(function() {
if ($(this).attr('checked')){
return_value = true;
} else {
error_msg += $(this).next().text() + ", ";
}
});
if(!return_value)
alert(error_msg);
return return_value;
} );
并在html中删除onsubmit函数