使用 VB.NET 在文本框中添加属性

Adding Attribute in Text box using VB.NET

我的 ASP.NET 页面中有一个 TextBox 控件

<asp:TextBox ID="PassTB" runat="server" CssClass="PasswordTB" />

我想要的是添加一个名为 OnFocus 的新属性 我通过添加这个

PassTB.Attributes.Add("OnFocus", "<%PassMessage%>")

Page Load
中的行 并且添加了属性但它不起作用
我专注于 TextBox 并且代码甚至没有从 Public sub

传递
Public Sub PassMessage(ByVal sender As Object, ByVal e As System.EventArgs)

这里的全部想法是用适当的消息创建一个面板,以帮助客户创建密码。

终于在@ADyson的小助手的帮助下解决了这个难题。
从一开始就非常简单。这就是为什么我将它提供给所有人以便找到解决方案的原因。
首先我们在ASP.NET控件中添加如下属性TextBox

<asp:TextBox ID="PassTB" OnFocus="MessageIn()" runat="server" CssClass="PasswordTB"  MaxLength="20" />

OnFocus 属性不是控件的内置属性,但如果我们像上面那样添加它也不会抛出任何错误。
Message Panel 和 'cssClass' 中,我们添加以下

.PassInstrPanel {
visibility: hidden;
text-align: left;
margin: 1px 1px 1px 1px;
width: auto;
height: auto;
background-color: antiquewhite;}

注意Visibility也就是"hidden" 这意味着它在客户端站点中没有看到相应的面板,但它在服务器站点中仍然存在
既然我们做了所有这些,现在是时候在 Java.

中添加两个函数了
<script type="text/javascript">
    function MessageOut() {
            var m = document.getElementById("page_main_PassInstructionPanel");
        m.style.visibility = "hiden";
    }
    function MessageIn() {
            var m = document.getElementById("page_main_PassInstructionPanel");
        m.style.visibility = "visible";
    }
    </script>

加载页面时不会看到任何消息,因为它是 hidden
asp.net:TextBox 控件聚焦时 OnFocus 属性 运行 java 函数 MessageIn() 和消息出现
最后,当我们按下按钮 "I got it" 时,我们 运行 另一个 Java 函数 MessageOut()
仅此而已。
我要感谢@ADyson 的宝贵助手。