Почему IE7 и IE8 дают мне «Отказ в доступе» при вызове jQuery?

Я использую Google CDN для вызова файла jQuery 1.4.2 Min в мое приложение. Один FF, Chrome, Safari все работает отлично. Но по какой-то причине я получаю сообщение об ошибке «Отказано в доступе» для файла jquery.min.js в строке 127 ...? Я не понимаю Кто-нибудь знает, почему это так? Я совершенно невежественен. ! Снимок экрана

Код


.

case 1:
methodName = "SavePropertyInformation";
var HasFoundProperty, PropertyType, NumberOfUnits,
PropertyAddress, PropertyCity, PropertyState,
PropertyZipCode, PropertyCounty;

HasFoundProperty = $("#foundProperty input[type='radio']:checked").val();
PropertyType = $('#<%= this.fvApp.FindControl("ddlPropertyType").ClientID %>').val();
NumberOfUnits = $('#<%= this.fvApp.FindControl("ddlNumberOfUnits").ClientID %>').val();
PropertyAddress = $('#<%= this.fvApp.FindControl("txtPropertyAddress").ClientID %>').val();
PropertyCity = $('#<%= this.fvApp.FindControl("txtPropertyCity").ClientID %>').val();
PropertyState = $('#<%= this.fvApp.FindControl("ddlPropertyState").ClientID %>').val();
PropertyZipCode = $('#<%= this.fvApp.FindControl("txtPropertyZipCode").ClientID %>').val();
GetCountyFromZipCode(PropertyZipCode);
PropertyCounty = GetCounty();
data = "{WebAccessID:'" + WebAccessID + "', HasFoundProperty:'" + HasFoundProperty + "', PropertyType:'" + PropertyType + "', NumberOfUnits: '"
    + NumberOfUnits + "', PropertyAddress: '" + PropertyAddress + "', PropertyCity:'" + PropertyCity
    + "', PropertyState:'" + PropertyState + "', PropertyZipCode:'" + PropertyZipCode + "',PropertyCounty:'"
    + PropertyCounty + "' }";
doAjaxReq(methodName, data, showSavingDialog);
break;

7
задан ndsmyter 25 March 2014 в 13:00
поделиться

4 ответа

Вызов поддомена воспринимается как другой домен из-за политики Same Origin. Убедитесь, что вы установили document.domain, чтобы избежать отказа в доступе с политикой Same Origin.

Чтобы синхронизировать домен document.domain, вам нужно установить его в двух местах. Добавьте тег скрипта, который устанавливает домен, и на странице должен быть iframe, который устанавливает то же самое на другом домене.

Страница, на которой происходит вызов Ajax, сделана с "www.example.com" и вызывает "ajax.example.com":

<script type="text/javascript">
  document.domain = "example.com";
</script>
<iframe src="http://ajax.example.com/domainCode.html"></iframe>

"domainCode.html" будет просто содержать тег скрипта

<html>
  <head>
    <script type="text/javascript">
      document.domain = "example.com";
    </script>
  </head>
  <body>
  </body>
</html>

С этим вы должны быть в состоянии общаться между вашими субдоменами.

5
ответ дан 7 December 2019 в 14:26
поделиться

Убедитесь, что IE не имеет никаких настроек прокси, скриптов автоконфигурации или чего-либо подобного в настройках. Я не вижу ничего плохого в вашем коде.

0
ответ дан 7 December 2019 в 14:26
поделиться

Я считаю, что проблема связана с определенной функцией безопасности в Internet Explorer, где вам не разрешено загружать код с удаленного сервера, если браузер не считает его "доверенным". Из того, что я читал, есть случаи, когда браузер не жалуется на это, а есть другие ситуации, когда он этого не позволяет. Не уверен, что это за триггер в вашем случае, но готов поспорить, что это корень вашей проблемы.

На вашем месте я бы просто загружал jQuery локально, пока у вас не возникнут проблемы с производительностью, которые побудят вас поступить иначе. Назовите файл jquery-latest.js, а затем по мере появления новых версий JQ сначала протестируйте их локально, а затем замените файл, когда вы уверены, что он работает. ИЛИ сохраните файл с именем версии и обновляйте каждую страницу по частям, в зависимости от того, что удобнее для использования вашим приложением.

Источник: http://geekswithblogs.net/TimH/archive/2006/05/17/78673.aspx

0
ответ дан 7 December 2019 в 14:26
поделиться

Вы сидите за брандмауэром? Это может мешать вам подключиться и загрузить jquery.js.

-1
ответ дан 7 December 2019 в 14:26
поделиться
Другие вопросы по тегам:

Похожие вопросы: