Это сводило меня с ума. Я пытаюсь перенести некоторые устаревшие приложения на новый сервер, и у меня возникло много проблем с document.all
, набитыми по всему коду.Код JavaScript, работающий на старом сервере, но не на новом
Прежде чем вы это скажете, я знаю. Не используйте document.all
. Он есть, и я ничего не могу с этим поделать ... эта конкретная проблема связана с JavaScript внутри сборки, для которой у меня нет исходного кода, и у меня нет разрешения на перепроработку.
Мое основное недоумение в том, что текущая версия приложения работает, когда я тестирую в том же браузере, что и моя перенесенная версия. Это прямая операция копирования и вставки, и во время миграции код не изменился, но когда я запускаю приложение на новом сервере, document.all(element)
всегда возвращает null.
Является ли IIS или более ранние .NET-платформы каким-то образом обрабатывают клиентские скрипты по-разному?
я происхожу из .NET 2.0, размещенного на Windows Server 2005 с IIS 6, и собираюсь .NET 4.0, размещенного на Windows Server 2012 с IIS 8.
Я ищу какие-либо идеи, почему это будет быть ведут себя по-разному при тестировании в одном браузере
ОБНОВЛЕНИЕ: пользовательский элемент управления мишенью document.all
становится закодирован, который портя идентификатор элемента управления, то есть то, что должно быть 'elementId'
в настоящее время выдается в виде 'elementId'
Код в a ssembly использует Attributes.Add, который включает одинарные кавычки. Я нашел несколько источников, предполагающие новый класс, такие как:
public class HtmlAttributeEncodingNot : System.Web.Util.HttpEncoder
{
protected override void HtmlAttributeEncode(string value, System.IO.TextWriter output)
{
output.Write(value);
}
}
добавляется, что позволит кодирования быть выключен с помощью <httpRuntime encoderType="HtmlAttributeEncodingNot"/>
в web.config, но я не могу добавить новые классы этот проект
Проверьте, как вы указали 'DOCTYPE' поверх своих страниц. – Aristos
Он установлен в' ' – McFixit
Возможно, это могло бы помочь: http://stackoverflow.com/questions/6488579/firefox-error-document-all-is-undefined-webuivalidation-js –