Как временно преобразовать форму ASP.NET Ajax, чтобы не использовать частичные обновления страницы? - PullRequest
0 голосов
/ 30 июня 2009

Мне нужна возможность временно отключить частичное обновление страницы для страницы на основе ASP.NET Ajax / UpdatePanel. (Причина заключается в том, чтобы обойти проблему, когда IE блокирует «автоматические загрузки файлов» для загрузок, созданных в результате этой обратной передачи, но я не хочу отвлекать от моего исходного вопроса)

Я посмотрел библиотеки javascript на стороне клиента, надеясь найти где-нибудь ключ. Я думаю, что решение может включать использование javascript для переопределения обработчика события «onclick» для элемента управления, который действует как триггер, а затем вызов «submit» в самой форме.

Кроме того, использование свойства EnablePartialRendering в серверном элементе управления ScriptManager не будет работать, поскольку это происходит при создании страницы. Я должен быть в состоянии сделать это в результате переключения раскрывающегося списка.

Есть идеи?

Ура!

/ Шон

Ответы [ 2 ]

1 голос
/ 06 июля 2009

Что ж, после долгих проб и ошибок я нашел два подхода, которые, похоже, сработали:

  • Используйте Javascript для ручной отправки формы верхнего уровня, связанной со страницей. Это обычно имеет идентификатор "form1".
  • Создайте кнопку, которая находится вне любой панели обновления и используйте Javascript для нажатия кнопки.

В итоге я воспользовался вторым подходом, поскольку он позволил мне обработать событие с помощью определенной подпрограммы, и мне не нужно было догадываться, что моя обратная передача пришла из вызова Javascript.

Это пример кода, который выполнял обратную передачу:

...
if (isDownload) {
    document.getElementById('FullPostbackSubmitter').click();
    return;
}
...

Надеюсь, это поможет кому-то еще!

0 голосов
/ 01 июля 2009

Вы можете установить свойство EnablePartialRendering вашего ScriptManager на false.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...