我正在使用jQuery Form 插件对我的表单进行“ajax”提交,该表单由大约 4 个单选选项组成。但是,如果没有选择任何单选按钮,我希望表单不提交。
到目前为止,这是我的尝试,得益于我在另一个 SO 答案和插件文档中找到的代码:
$(document).ready(function() {
var options = { target: '#response',
type: 'get',
beforeSubmit: ischecked
}
$('#answer').ajaxForm(options);
});
function ischecked(formData, jqForm, options){
if ($('input:radio', $('#answer').is(':checked')))
{
return true;
}
else
{
return false;
}
}
我确定回调ischecked
正在执行(alert()
s 将触发等),但代码本身似乎没有检测到没有选择单选按钮,并且继续提交表单。
这是 HTML 表单:
<form action="score.php" id="answer">
<div style="margin-top: 0pt;" class="ans">
<input type="hidden" value="127" name="question_id"/>
<input type="hidden" value="f5043d5122cec6eb981c9a2fc7a0a653" name="user_id"/>
<input type="hidden" value="36" name="question_key"/>
<input type="hidden" value="37" name="next_key"/>
<ul id="answers">
<li>
<label>
<input type="radio" value="464" name="answer_id"/> mod_rewrite </label>
</li>
<li>
<label>
<input type="radio" value="465" name="answer_id"/> XML Site Map </label>
</li>
<li>
<label>
<input type="radio" value="466" name="answer_id"/> Tiny URL </label>
</li>
<li>
<label>
<input type="radio" value="467" name="answer_id"/> both a) and b) </label>
</li>
<li>
<label>
<input type="radio" value="468" name="answer_id"/> a), b) and c) can all be used to make it easier for Google to index your dynamically generated URLs. </label>
</li>
</ul>
</div>
<input type="submit" value="Submit Answer and Get Result" id="answer_submission"/>
</form>