AsyncFileUpload, невозможно обновить страницу после завершения загрузки

У меня есть Ajax AsyncFileUpload на одной из моих страниц (внутри панели обновлений). Элемент управления работает, однако я хочу, чтобы страница перезагружалась после завершения загрузки. Я попробовал Response.Redirect в коде для метода OnUploadedComplete и location.reload(true) в OnClientUploadComplete. Оба приводят к предупреждению javascript об ошибке ответа сервера: «Неизвестная ошибка сервера».

Вы хотите увидеть страницу ответа?», и страница не обновляется.

Кто-нибудь смог сделать полное обновление страницы после завершения загрузки?

Изменить: я ошибочно сказал, что AsyncFileUpload находится на панели управления, я имел в виду панель обновления.


person peroija    schedule 28.02.2012    source источник
comment
@peroija-Вы пытались указать идентификатор в качестве идентификатора клиента.   -  person coder    schedule 29.02.2012
comment
Почему вы вместо этого не используете asp: FileUpload?   -  person Yuriy Rozhovetskiy    schedule 29.02.2012
comment
@DotNetter, не могли бы вы уточнить, что вы предлагаете мне дать идентификатор клиента?   -  person peroija    schedule 29.02.2012
comment
@YuriyRozhovetskiy Сначала я пытался загрузить обычный файл, но он не работает на панели обновлений.   -  person peroija    schedule 29.02.2012
comment
@peroija-Вам нужно добавить идентификатор клиента к идентификатору управления загрузкой, так как у меня была такая же проблема раньше, и я сработал, когда я перешел на это.   -  person coder    schedule 29.02.2012


Ответы (3)


Используйте элемент управления asp:FileUpload и зарегистрируйте его как элемент управления обратной передачей с помощью метода RegisterPostBackControl Scriptmanager. Или добавьте запись триггера обратной передачи для этой коллекции FileUpload в триггеры UpdatePanel.

person Yuriy Rozhovetskiy    schedule 29.02.2012
comment
не совсем правильный ответ, но вы заставили меня снова попробовать этот элемент управления. asp:FileUpload нельзя использовать в качестве триггера, так как у него нет события клика. однако есть отдельная кнопка загрузки. Я смог использовать `Response.Redirect()' в конце события нажатия кнопки, чтобы обновить страницу, как я хотел. Не уверен, почему ничего из этого не сработало, когда я изначально пробовал: P Спасибо! - person peroija; 29.02.2012

Это панель управления, которую вы сказали. Это панель обновления? Если это так, вы можете попробовать upd.Update(); чтобы обновить панель.

person Lukinha RS    schedule 28.02.2012

Будьте осторожны, если у вас есть Response на обратной стороне, вы можете закончить жизненный цикл своей страницы прямо здесь. Это всего лишь предположение. Убедитесь, что ваш код даже достигает намеченной точки. Ищите такие вещи, как Response.End, которые предотвратят выполнение чего-либо после этого.

person Lukas    schedule 28.02.2012