我正在尝试在验证用户输入后控制表单提交 用户必须至少选择一个收音机,否则表格不会提交
如果用户没有选择我调用的任何无线电输入
,则第一部分工作正常$('form').submit(function () { return false });
否则如果他选择了我会打电话的话
$('form').submit();
但它没有提交
function validateSelection() {
var temp = false;
$('.lang-radio > input[type=radio]').each(function () {
if ($(this).is(':checked')) {
temp |= $(this).is(':checked')
};
});
if (temp != 1) {
$('form').submit(function () { return false });
$('.high-light').effect("shake");
}
else {
$('form').submit();
}
}
我从OnClientClick =“validateSelection();”调用函数validateSelection 我正在使用asp.net webforms
答案 0 :(得分:3)
当你这样做时
$('form').submit(function () { return false });
您要将事件处理程序附加到submit
事件。因此,如果此行首先执行,那么每次执行$('form').submit();
时,将触发事件处理程序并返回false而不提交。
如果.Net控件是提交按钮,您只需将第一行替换为return false
(编辑:并将其更改为OnClientClick="return validateSelection();"
),否则您可以完全删除它。
答案 1 :(得分:1)
1)删除OnClientClick =" validateSelection();"从你的表格
2)给class =" validateForm"到您的表格
3)将以下js代码放入js
$(document).ready(function(){
$('.validateForm').on('submit',function(){
var ckradio = $(this).find('[type=radio]:checked');
if(ckradio.length == 0){
return false;
}else{
return true;
}
});
});