在 mvc 2 中单击表单中的某些按钮时禁用客户端验证

发布于 2024-10-20 06:14:21 字数 606 浏览 2 评论 0原文

我有一个 mvc 2 应用程序,其中有一个包含两个按钮的表单

 <% Html.EnableClientValidation(); %>
<%using(Html.BeginForm()){ %>
            <%= Html.LabelFor(m=> m.FormName) %>
            <%= Html.TextBoxFor(m=> m.FormName) %>
            <%: Html.ValidationMessageFor(m => m.FormName) %>
   <input type="submit" name="BtnSegment" value="Add" class="button_99" title="Add" />
    <input type="submit" name="BtnSave" value="Save" class="button_99"  title="Save" />
<%} %>

现在我的要求是在用户单击 Add 按钮时禁用验证。 但当用户单击“保存”按钮时进行验证。 谢谢, 苏拉吉

i am having an mvc 2 application in which i have a form that contains two buttons

 <% Html.EnableClientValidation(); %>
<%using(Html.BeginForm()){ %>
            <%= Html.LabelFor(m=> m.FormName) %>
            <%= Html.TextBoxFor(m=> m.FormName) %>
            <%: Html.ValidationMessageFor(m => m.FormName) %>
   <input type="submit" name="BtnSegment" value="Add" class="button_99" title="Add" />
    <input type="submit" name="BtnSave" value="Save" class="button_99"  title="Save" />
<%} %>

Now my requirement is to disable validation when the user clicks Add button.
But validate when the user clicks Save Button.
thanks,
suraj

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

苏别ゝ 2024-10-27 06:14:21

如果您使用 MSAjax 进行客户端验证,您可以执行以下操作:

<input type="submit" name="BtnSegment" disableValidation="true" value="Add" class="button_99" title="Add" />

注意按钮上的 disableValidation 属性。显然,这是无效的 HTML Transitional,您可以通过使用 javascript 附加此属性来作弊:

document.getElementById('idOfYourButton').disableValidation = true;

仍然很臭,但至少验证器会很高兴。

我个人认为 MSAjax 库很垃圾。使用 jquery.validate 插件(顺便说一句,这是默认的客户端ASP.NET MVC 中的验证机制 3) 您只需将 cancel 类应用于按钮:

<input type="submit" name="BtnSegment" value="Add" class="button_99 cancel" title="Add" />

If you are using MSAjax for client side validation you could do this:

<input type="submit" name="BtnSegment" disableValidation="true" value="Add" class="button_99" title="Add" />

Notice the disableValidation attribute on the button. Obviously that's invalid HTML Transitional and you could cheat by appending this attribute using javascript:

document.getElementById('idOfYourButton').disableValidation = true;

Still stinky but at least the validator will be happy.

Personally I consider MSAjax library a crap. With the jquery.validate plugin (which by the way is the default client side validation mechanism in ASP.NET MVC 3) you simlpy apply the cancel class to the button:

<input type="submit" name="BtnSegment" value="Add" class="button_99 cancel" title="Add" />
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文