gpt4 book ai didi

asp.net - 我如何在周围的 DIV 上添加额外的 CSS 类以应对失败的表单验证?

转载 作者:行者123 更新时间:2023-12-01 06:11:46 25 4
gpt4 key购买 nike

这是我的场景:

  <!-- Normal Control -->
<div class="required">
<label for="address1">Address line 1</label>
<input type="text id="address1" name="address1" class="inputText" />
</div>

<!-- Same Control - but with a validation error -->
<div class="required error">
<p class="error">Address Line 1 Field is required</p>
<label for="address1">Address line 1</label>
<input type="text id="address1" name="address1" class="inputText" />
</div>

在“验证错误”html 区域,我可以使用如下代码显示消息:

  <div class="required">
<asp:RequiredFieldValidator id="address1_validate" runat="server" ControlToValidate="address1" Text='<p class="error">Address Line 1 Field is required</p>' />
<label for="address1">Address (line 1)</label>
<asp:TextBox id="address1" CssClass="inputText" CausesValidation="true" runat="server"/>
</div>

我无法做的是将附加类添加到周围的 div 标记中。我在想我可以做类似的事情:

  <div class="required <%= !address1_validate.isValid ? "error" : "" %>">

这几乎行不通。

无论如何,我不想依赖 JavaScript 来设置这些值 - 它需要像“Web 1.0”一样工作。

有什么想法吗?

谢谢,乔恩

--------我的解决方案--------这是对我有用的代码:

  protected void Page_Load(object sender, EventArgs e)
{
if (this.IsPostBack)
{
address1_validate.Validate();
if (!address1_validate.IsValid)
{
address_panel.CssClass = "required error";
}
}
}

前端:

  <asp:Panel runat="server" id="address_panel" CssClass="required">
<asp:RequiredFieldValidator id="address1_validate" runat="server" ControlToValidate="address1" Text='<p class="error">Address Field is required</p>' />
<label for="address1">Address (line 1)</label>
<asp:TextBox id="address1" CssClass="inputText" CausesValidation="true" EnableViewState="true" runat="server" />
</asp:Panel>

感谢您的帮助!

最佳答案

您可以用 ASP 面板替换 div,当然是 runat=server。

<asp:Panel runat="server" ID="Panel1">
<label for="address1">Address line 1</label>
<input type="text id="address1" name="address1" class="inputText" />
</asp:Panel>

在代码隐藏中,您可以执行 -

address1_validate.Validate();
...
...
if(address1_validate.IsValid)
Panel1.CssClass = "required";
else
Panel1.CssClass = "required error";

关于asp.net - 我如何在周围的 DIV 上添加额外的 CSS 类以应对失败的表单验证?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/869662/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com