Мне нужно сделать модальное окно на JavaScript для сбора данных от пользователя на странице ASP.NET 2.0.
Вот что должно происходить: пользователь нажимает кнопку, появляется модальное окно с несколькими полями для ввода данных (примерно 3-4 вопроса). Пока это окно открыто, основная страница должна быть заблокирована для взаимодействия. После того как пользователь заполнит все поля и закроет окно, мне нужно получить эти значения в коде ASP.NET и обработать их в code-behind.
Подскажите пожалуйста, как лучше всего реализовать такую функциональность? Буду благодарен за примеры кода.
Можешь использовать ClientScript.RegisterStartupScript для модального окна. Создай обычные asp:TextBox контролы в скрытом div’е. По клику на кнопку вызывай JavaScript функцию - она покажет div поверх страницы. Заполнил поля - делай postback через Button прямо в модальном окне. Все значения сами попадут в code-behind через свойства Text контролов. Намного проще, чем с hidden полями возиться.
А почему не попробовать UpdatePanel с Panel? Делаешь обычный Panel с полями, прячешь через CSS (display: none), показываешь через JavaScript. Фон затемняешь полупрозрачным div’ом. Получается модальное окно, но данные легко передаются в code-behind через обычные контролы. На старых версиях ASP.NET работает без проблем.