Привет всем! У меня возникла проблема с формой на ASP.NET. Мне нужно сделать так, чтобы текстовое поле появлялось или скрывалось в зависимости от выбора в выпадающем списке. К тому же, если поле видимо, его надо проверять на заполненность.
Вот пример кода, который у меня есть:
<asp:DropDownList ID="списокДней" runat="server">
<asp:ListItem Text="Выберите" Value="0"></asp:ListItem>
<asp:ListItem Text="1" Value="1"></asp:ListItem>
<asp:ListItem Text="2" Value="2"></asp:ListItem>
</asp:DropDownList>
<asp:TextBox ID="полеДаты" runat="server" Visible="false"></asp:TextBox>
<asp:Button ID="кнопкаОтправить" Text="Отправить" runat="server" />
Как мне написать JavaScript, чтобы менять видимость текстового поля? И как правильно настроить валидацию? Буду благодарен за любую помощь!
Да, с этим можно поиграться. Я бы попробовал сделать через событие onchange для списка. Типа document.getElementById(‘полеДаты’).style.display = (this.value != ‘0’) ? ‘block’ : ‘none’. А для валидации при отправке формы проверять, если поле видимое (!= ‘none’), то не пустое ли оно. Главное не забыть подключить скрипт на странице. Может еще стоит добавить атрибут required для текстового поля, чтобы браузер тоже помогал.
смотри, я пробовал похожее раньше и могу посоветовать такой вариант. при изменении значения в выпадающем списке можно через js менять свойство style.display текстового поля, делая его видимым, если выбрано не значение по умолчанию. можно назначить обработчик события change, а при сабмите формы, если поле видно, проверять его содержимое. например, если полеДаты.style.display равен ‘block’, то проверь, что поле не пустое. надеюсь, это поможет решить задачу