我们将JQuery引入现有的ASP.NET应用程序,并使用JQuery 的Validate插件进行客户端验证(我们不想使用asp.net验证器).
一切都与asp:Button控件很好地配合.在提交页面之前触发客户端验证.
但是,在使用LinkButton和ImageButton控件时,页面会在未先验证表单的情况下提交.
这是因为验证适用于呈现为输入类型="提交"的按钮,而ImageButton呈现为输入类型="图像".
有人经历过这个吗?
非常感谢您的想法和信息如何解决.
非常感谢,您的回答有助于确定问题.事实证明,JQuery的validate插件中存在一个错误.我们使用补丁来避免验证隐藏的输入字段,它使用parents().filter(":hidden").这在JQuery 1.3.2中无法正常工作.我们用.is(":visible")替换它.现在asp.net ImageButton默认工作!
LinkButton仍然无法正常工作.简单的解决方案是添加一个click函数,如果表单无效,则返回false:
$("#<%= tb.ClientID %>").click(function() {
return $('form').valid();
})
Run Code Online (Sandbox Code Playgroud)