Я использую jQuery и ASP.NET, чтобы показать диалог, содержащий кнопки.После некоторой чистки я заставил работать кнопки в диалоговом окне, добавив немного JavaScript, чтобы добавить диалоговое окно в форму.
var dlg = $('#ctl00_ctl00_PageContent_PageContent__pnlPopup').dialog({
autoOpen: false,
height: 180,
width: 500,
modal: true,
draggable: true
});
dlg.parent().appendTo($('form:first')); // without this, controls in the dialog are non-functional
Это работает нормально, пока я не открою диалоговое окно, закройте его, а затем попробуйтеиспользовать элемент управления, такой как ComboBox или LinkButton на родительской странице.В этот момент я получаю ошибку проверки ViewState:
Не удалось загрузить ViewState.Дерево управления, в которое загружается состояние просмотра, должно соответствовать дереву управления, которое использовалось для сохранения состояния просмотра во время предыдущего запроса.Например, при динамическом добавлении элементов управления элементы, добавленные во время обратной передачи, должны соответствовать типу и расположению элементов управления, добавленных во время первоначального запроса.
Есть ли способ обойти это?Я наполовину понимаю, почему это происходит - jQuery меняет структуру документов, но я не совсем уверен, как / почему это влияет на ViewState.