ASP.NET Доступ к AJAX созданным элементам управления на postBack - PullRequest
0 голосов
/ 03 августа 2011

Я генерирую 2 выпадающих списка и элемент управления CheckBoxList во время выполнения, используя обратные вызовы AJAX для веб-службы (файл .asmx).Служба создает два Dropdowns и CheckBoxList на сервере и возвращает визуализированный html в виде строки, которая внедряется в веб-страницу во время выполнения с использованием функций javascript.

Во время postBack я хочу получить значения двухраскрывающиеся списки, а также определить, какие (если таковые имеются) флажки были отмечены.

Правильно ли я считаю, что HTML-код, введенный на страницу во время выполнения, не отправляется обратно на сервер во время обратной передачи?Если это так, что было бы наиболее разумным способом получения моих значений?

Я думаю, что лучший способ получить значения динамических элементов управления - это использовать JavaScript для чтения значений и записиих в скрытое поле, которое является частью класса страницы, непосредственно перед обратной передачей.

Если есть лучший способ сделать это, пожалуйста, поделитесь!

Ответы [ 2 ]

1 голос
/ 03 августа 2011

Поскольку веб-служба создает html, который позже внедряется в страницу, они не являются серверными элементами управления, и, следовательно, сервер не может знать, что они существуют. Мне кажется, что скрытый элемент html поможет мне в этом деле.

1 голос
/ 03 августа 2011

Один из способов получения ваших значений во время обратной передачи - это сохранение значений в скрытом поле, которое, как следует из названия элемента, невидимо на странице -

<asp:HiddenField id="countrySelected" value="" />

В вашем javascript перед постом обратно вы можете заполнить необходимую информацию -

document.getElementById('countrySelected').value = 'USA';

В своем коде вы можете выбрать значение для использования -

countrySelected.value

...