У меня есть сайт ASP.NET. В один момент запускается обратная передача, и некоторые данные изменяются на сервере, и ответ отправляется (с новым состоянием представления). Проблема в том, что я использую jQuery, чтобы отображать только часть этого ответа на странице. Это работает, но у меня проблемы с обновлением состояния представления с новым значением. У меня есть somethig вроде этого:Обновление viewstate из ответа postback
var updatePreviewArea = function (nid) {
var $content = jQuery('<div></div>');
$content.load('http://site.com?nid=' + nid, function (response) {
var $response = jQuery(response);
jQuery('targetDiv1').replaceWith($response.find('#srcDiv1'));
jQuery('targetDiv2').replaceWith($response.find('#srcDiv2'));
// update viewstate from postback response
var selectors = ['#__VIEWSTATE', '#__EVENTVALIDATION'];
for (var i in selectors) {
var value = $response.find(selectors[i]).val();
jQuery(selectors[i]).val(value);
}
});
}
Но после этого я получаю:
Sys.WebForms.PageRequestManagerServerErrorException: Sys.WebForms.PageRequestManagerServerErrorException: Проверка ViewState MAC не удалось. Если это приложение размещено кластером Web Farm или , убедитесь, что в конфигурации указан один и тот же код проверки валидации и проверки валидации . AutoGenerate не может использоваться в кластере. ' при вызове метода: [nsIDOMEventListener :: handleEvent]
Является ли страница, которую вы загружаете с помощью jQuery так же, как и исходная страница? У вас есть веб-ферма? –
Это не та же страница, и это не ферма (но я уже установил машинный ключ) – mlaen