【问题标题】:Ignoring Validators忽略验证器
【发布时间】:2013-08-16 04:23:32
【问题描述】:
我有一个页面,我使用Javascript 和<input> 按钮来隐藏向我的数据库添加新用户的功能。为了确保人们输入准确的信息,我添加了非常有用的验证器。问题是我在这个页面上还有一个GridView 和一个搜索工具,因为我使用Javascript 来隐藏它,所以不会触发点击事件,因为附加到验证器的那些文本框中没有正确的数据.除非点击了上面的按钮,否则有没有办法让它忽略验证?
【问题讨论】:
标签:
javascript
asp.net
jquery-ui
【解决方案1】:
我写了这篇文章,并在 Google 上遇到了另一个问题。我的问题是我可以将CausesValidation="False" 添加到有效的ASP:BUTTON 控件中,但我使用HTML 来生成添加用户button 而不是ASP.NET。由于我使用的是JQueryUI,因此我发现更容易搜索如何从<input> 更改为<asp:button> 控件,我通过将javascript 更改为:
$("#button").click(function () {
到:
$("input[id$='AddButton']").click(function () {
如果我理解正确,<asp:button> 会以input[id=... 等形式呈现为 HTML。添加 $ 意味着脚本适用于以 AddButton 结尾的任何 <asp:button>。我需要这个,因为我在这个页面上有一些搜索按钮隐藏在其他 Views 中,并且仍然希望页面上有一个一致的命名结构。另一种方法是使用^ 符号代替,这将应用AddButton 位于ID 开头的脚本。
【解决方案2】:
尝试在您要验证的那组字段上设置validation group。这应该使验证器仅在该组控件上工作,而不在其他控件上工作。
在所有输入控件、验证控件和提交按钮上设置验证组。