如何从已更改的文本框中删除类

本文关键字:文本 删除 | 更新日期: 2023-09-27 18:27:22

ASP.net:

<asp:TextBox ID="tbFirst" OnTextChanged="AddClass" runat="server" CssClass="tbStyle colorBlue" Text='<%# Eval("theFirstName") %>'></asp:TextBox>
<asp:TextBox ID="tbLast" OnTextChanged="AddClass" runat="server" CssClass="tbStyle colorBlue" Text='<%# Eval("theLastName") %>'></asp:TextBox>
<asp:TextBox ID="tbAdd1" OnTextChanged="AddClass" ClientIDMode="Static" runat="server" CssClass="tbStyle colorBlue" Text='<%# Eval("theAddress1") %>'></asp:TextBox>

CSS:

.colorRed
{
    color: #CC0000;
}
.colorBlue
{
    color: #0000CC;
}

C#:

public void AddClass() {
    //add the 'colorRed' class to the textbox that was changed and remove the 'colorBlue' class.
}

如何删除其中一个类,并将一个新类添加到更改的相应文本框中。

如何从已更改的文本框中删除类

使用JS而不是调用服务器:

<asp:TextBox ... Onchange="addClass(this)"></asp:TextBox> <!-- fires after losing focus-->
<asp:TextBox ... Oninput="addClass(this)"></asp:TextBox> <!-- fires after key pressing-->
<script>
    function addClass(sender) {
          $(sender).addClass('colorRed');
    }
</script>

会更快

您可能需要为OnTextChanged事件处理程序指定一个有效的Signature。

请参见下文。

 protected void AddClass(object sender, EventArgs e)
        {
           ((TextBox)sender).CssClass = "tbStyle colorRed";
        }

我们更改了CssClass 的值