【问题标题】:How can I create custom "Group Validation" with Bootstrap Validation?如何使用引导验证创建自定义“组验证”?
【发布时间】:2014-01-09 18:11:27
【问题描述】:

我正在查看 this tutorial 进行引导验证。在本教程中,电子邮件文本控件通过以下方式链接在一起:

data-validation-matches-match="email"

对于复选框组,还有一个 minmax 选中值。 我的问题是这样的,假设我有一组文本框,在这个例子中我将主 div 命名为AddressCityCounty

<div id="AddressCityCounty" style="width:800px;">
<div class="control-group" style="float:left; margin-right:10px;">
    <label class="control-label">Address:
        <asp:RequiredFieldValidator ID="reqAddress" runat="server" ControlToValidate="txtAddress" CssClass="required" EnableClientScript="true" Display="dynamic" SetFocusOnError="true" ErrorMessage="*"/>
    </label>
    <div class="controls">
        <asp:TextBox ID="txtAddress" runat="server" required/>
        <p class="help-block"></p>
    </div>
</div>
<div class="control-group" style="float:left; margin-right:10px;">
    <label class="control-label">City:
        <asp:RequiredFieldValidator ID="reqCity" runat="server" ControlToValidate="txtCity" CssClass="required" EnableClientScript="true" Display="dynamic" SetFocusOnError="true" ErrorMessage="*"/>
    </label>
    <div class="controls">
        <asp:TextBox ID="txtCity" runat="server" required/>
        <p class="help-block"></p>
    </div>
</div>
<div class="control-group" style="float:left;">
    <label class="control-label">County: 
        <asp:RequiredFieldValidator ID="reqCounty" runat="server" ControlToValidate="txtCounty" CssClass="required" EnableClientScript="true" Display="dynamic" SetFocusOnError="true" ErrorMessage="*"/>
    </label>
    <div class="controls">
        <asp:TextBox ID="txtCounty" runat="server" required/>
        <p class="help-block"></p>
    </div>
</div>

如何编写脚本以使控件组变为黄色(就像教程中的电子邮件和质量控制组一样),直到该组中的所有字段都已填写?

【问题讨论】:

  • 我想知道为什么 bootstrap 需要自己的validation plugin
  • @Blazemonger 的花里胡哨总是很好......
  • @Blazemonger 我的 .net 验证也已经在这样做了

标签: jquery css validation twitter-bootstrap


【解决方案1】:

首先,我建议您不要使用 asp.net 控件来执行此操作。我过去曾将这些与 twitter bootstrap 一起使用,并取得了不同程度的成功。我会改为使用 HTML 文本框。如果您正在使用 .NET 框架并且需要服务器端验证,我是否还建议使用带有模型验证的 .NET MVC - 更简洁。

首先,您需要将 jsBootstrapValidation 以及对 twitter bootstrap 的引用添加到您的项目中。之后,您想继续并遵循网站上的建议。如果您注意到电子邮件验证所需要的只是将您的文本框设置为

<input type="email" />

jsBootstrapValidation 将完成剩下的工作。但是再一次 - 您将无法使用 asp.net 控件来实现这一点。

您应该能够将您的 asp.net 控件设置为

<asp:Textbox id"emailTextbox" class="email" runat="server" />

之后,您需要提供自定义 jquery 来处理具有特定类的任何文本框上的不同事件,并以这种方式进行。麻烦?绝对地。值得?取决于这是否是一个面向公众的应用程序,他们对这样的东西的需求如何。

【讨论】:

  • 我根本不使用它进行验证。当用户填写表单以获得更好的用户体验时,我正在使用 jquery 和 css 来获得冷色和发光。我已经测试了要放置它的应用程序,它的工作方式与添加任何应用程序之前的工作方式相同。所以根据大家的评论,我猜这个功能是不可能的?
  • 啊,我的错 - 可能只是没有那个特定的库。我认为你必须修改它才能工作。主要问题是,一旦您呈现您的 asp.net 网络表单,您总是会得到一个 ,这显然与电子邮件类型不符。如果您自己编写,也许您可​​以将其设置为关闭某些类,例如电子邮件类 - 依此类推。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-01-13
  • 1970-01-01
  • 2013-03-02
  • 1970-01-01
  • 2021-02-04
相关资源
最近更新 更多