Текстовое поле ASP.Net onblur событие

У меня есть текстовое поле, значения которого я должен проверить (если значение текстового поля равняется 50, то отобразите сообщение в lblShowMsg), когда пользовательские вкладки из текстового поля (onBlur событие). Я, может казаться, не разбираюсь в синтаксисе.

У меня есть этот код моего pageload события:

protected void Page_Load(object sender, EventArgs e)
{
    txtCategory.Attributes.Add("onblur", "validate()"); 

}

Но я, может казаться, не получаю корректный код JavaScript. Какие-либо предложения?

16
задан LearningCSharp 5 March 2010 в 03:09
поделиться

2 ответа

Это настоящий код в вашем Page_Load? Вам нужно использовать имя элемента управления, а не имя типа для TextBox. Например, вы можете попробовать:

 textBox1.Attributes.Add("onblur", "validate();");

где «textBox1» - это идентификатор, который вы назначили текстовому полю в вашей разметке.

Кроме того, из Javascript очень возможно, что идентификатор textBox изменился после того, как он был отображен на странице. Было бы лучше, если бы вы передали управление функции проверки:

function validate(_this)
{
    if (_this.value == "50")
        // then set the ID of the label.  
}

Затем вы бы установили атрибут следующим образом:

textBox1.Attributes.Add("onblur", "validate(this);");

Наконец, я настоятельно рекомендую использовать библиотеку JQuery, если вы что-то делаете в Javascript. Это сделает вашу жизнь в 10 раз проще.

5
ответ дан 30 November 2019 в 22:43
поделиться

Это работает.

Textbox1.Attributes.Add ("onblur", "javascript: alert ('aaa');");

Убедитесь, что функция находится в скриптовой части страницы.


Моя страница

<script type="text/javascript">
    function Validate() {

        alert('validate');

    }

    </script>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:TextBox ID="Textbox1" runat="server"></asp:TextBox>
        <asp:Button ID="Button1" runat="server" Text="Button" />
    </div>
    </form>
</body>
</html>

код за

public partial class _Default : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            Textbox1.Attributes.Add("onblur","Validate();");
        }
    }
2
ответ дан 30 November 2019 в 22:43
поделиться
Другие вопросы по тегам:

Похожие вопросы: