validationasp.net中的单个复选框
我有一个表单,在用户勾选条款和条件复选框( chkTerms
)之前不应该提交。 如果表单未被提交,阻止提交表单的最佳方法是什么?
我会在表单标记中调用JavaScript函数,但出于各种原因,它嵌入在我的母版页中,所以我认为这是不行的。 例如,这可以在jQuery中完成吗? 谢谢
在表单加载时禁用您的提交按钮。 仅在选中复选框时启用它,并在取消选中复选框时再次禁用它。
请查看以下示例:
Terms and Conditions
你的脚本function应该是
function submitStatus(){ if(document.getElementById('chk').checked){ document.getElementById('btn').disabled = false; }else{ document.getElementById('btn').disabled = true; } }
是的,在jQuery中这很容易:
$(document).ready(function(){ $('#myform').submit(function(e){ // when the form is loaded if (!$('input[name="chkTerms"]')[0].checked) { // if the input with the name "chkTerms" is not checked e.preventDefault(); // prevent the form submission // provide feedback to the user in some way } } });
你可以使用jqueryvalidation
http://bassistance.de/jquery-plugins/jquery-plugin-validation/
最好的方法是使用JQuery bcoz,如果你禁用一个按钮并仅启用复选框点击,用户可能不知道只有选中复选框才会启用该按钮。你可以使用上面提到的相同编码。
问题实际上是,一旦按钮被“启用”,我的所有其他validation都会被绕过并且表单仍会提交……