Правильная ссылка на элементы управления в пользовательских элементах управления ASP.NET в JavaScript - PullRequest
2 голосов
/ 21 декабря 2008

У меня есть пользовательский элемент управления ASP.NET, который содержит элемент управления текстового поля и элемент управления кнопки. Этот пользовательский элемент управления будет добавлен на мою веб-страницу много раз. Мне нужно иметь кусок JavaScript, который будет работать при каждом изменении текстового поля, и отключить кнопку, если значение текстового поля недопустимо. Мой вопрос заключается в следующем: как поместить JavaScript в текстовое поле, которое может ссылаться только на кнопку, находящуюся в том же пользовательском элементе управления? Помните, что существует много пользовательских элементов управления ASP.NET, каждый из которых имеет кнопку и текстовое поле, и я хочу, чтобы только недопустимое значение в текстовом поле влияло на одну связанную кнопку. Спасибо!

1 Ответ

5 голосов
/ 21 декабря 2008

Вы можете использовать свойство ClientId элементов управления (оно однозначно идентифицирует элемент управления на стороне клиента) и сделать что-то подобное:

<asp:TextBox runat="server" ID="myTextBox" />
<asp:Button runat="server" ID="myButton" Text="click" />

<script language="javascript" type="text/javascript">
    document.getElementById("<%=myTextBox.ClientID %>").onclick = function() {
        document.getElementById("<%=myButton.ClientID %>").disabled = "disabled";
    }
</script>

Также обратитесь к этому документу: Клиентский скрипт на веб-страницах ASP.NET , раздел Ссылка на серверные элементы управления в клиентском скрипте

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...