Добавление атрибута в текстовое поле с использованием VB.NET - PullRequest
0 голосов
/ 12 ноября 2018

У меня есть элемент управления TextBox на моей странице ASP.NET

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

И я хочу добавить новый атрибут с именем OnFocus Я сделал это, добавив это

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

Линия в Page Load sub
И атрибут добавлен, но он не работает
Я сосредотачиваюсь на TextBox, а код даже не передается от Public sub

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

Вся идея здесь заключается в том, чтобы создать Panel с соответствующим сообщением, чтобы помочь клиенту в создании пароля.

1 Ответ

0 голосов
/ 13 ноября 2018

Наконец-то помощник из @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() и появляется сообщение
И наконец, когда мы нажимаем кнопку «Я понял», мы запускаем другую функцию Java MessageOut()
И это все.
Я хочу поблагодарить @ADyson за его ценного помощника.

...