Вопрос
У меня есть веб-сайт ASP.Net, на котором не удается выполнить обратную передачу AJAX (как с ASP.Net AJAX, так и с сторонним элементом управления) в IE.Фаерфокс работает нормально.Если я устанавливаю веб-сайт на другой компьютер без .Net 3.5 SP1, он работает как положено.
Когда это не удается, Fiddler показывает, что я получаю ошибку 405 «Метод не разрешен».Кажется, что форма публикует сообщения на страницах, отличных от страницы, которую я просматриваю.
Действие формы — «#» для страницы на сломанном сайте (с SP1).Действие формы — «Default.aspx» для той же страницы на веб-сайте без пакета обновления 1.
Есть идеи?
Решение
Пакет обновления 1 изменяет элемент управления HtmlForm, чтобы он учитывал атрибут действия, тогда как предыдущие версии его игнорировали.Похоже, у вас на битых страницах есть что-то вроде этого:
<form runat="server" action="#">
Удалите действие, и все будет в порядке:
<form runat="server">
Дополнительная информация здесь: http://forums.asp.net/t/1305800.aspx
Другие советы
Ознакомьтесь со следующей статьей базы знаний Microsoft:
http://support.microsoft.com/kb/216493
Если вы используете IIS4 или IIS5, это может быть проблемой.