Сайт asp.net mvc3 на веб-сайте IIS 7.5 не загружает jquery - PullRequest
0 голосов
/ 22 февраля 2012

Новичок здесь на jQuery борется с некоторыми основами развертывания:

Работая со стандартным шаблоном asp.net mvc3, который поставляется с VS2010, я попытался включить виджет, который можно выбрать с помощью jquery ui. В разделе заголовка _Layout.cshtml у меня есть следующие возможности:

    @* <script src="@Url.Content("~/Scripts/jquery-1.5.1.min.js")" type="text/javascript"></script>
    <script src="@Url.Content("~/Scripts/jquery-ui-1.8.11.min.js")" type="text/javascript"></script>*@
   @* <script src="@Url.Content("http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.5.1.min.js")" type="text/javascript"></script>*@
    @*    <script src="@Url.Content("http://ajax.aspnetcdn.com/ajax/jquery.ui/1.8.11/jquery-ui.min.js")" type="text/javascript"></script>*@
    <script src="@Url.Content("https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js")" type="text/javascript"></script>
    <script src="@Url.Content("https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.16/jquery-ui.min.js")" type="text/javascript"></script>

Я не могу загрузить ни один из этих сценариев, так как виджет не отображается на сайте в IIS. В Visual Studio я могу видеть содержимое jQuery.

Я просмотрел все настройки IIS для сайта, но, похоже, ничего не связано с javascript. Я прочитал следующие связанные сообщения:

, что, похоже, не имеет место, поскольку я пробовал абсолютные пути с правильным синтаксисом Url.Content. Возможно, что-то не хватает, но что это может быть?

РЕДАКТИРОВАТЬ 1 Изменена загрузка свернутой версии jQuery из Google, чтобы узнать, в этом ли проблема.

Ответы [ 2 ]

2 голосов
/ 22 февраля 2012

Когда вы ссылаетесь на элементы в другом домене, вам не нужен HTML-помощник @Url.Content() Попробуйте использовать URL-адрес без помощника.

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js" 
        type="text/javascript"></script>

Также, если вы можете опубликовать ссылку на сайт или необработанный HTML-код, отображаемый в браузере, мы можем быстро определить, что происходит.

0 голосов
/ 22 февраля 2012

Спасибо за все ответы. После дальнейшего копания выясняется, что это не проблема загрузки jQuery. Скрипты загружаются правильно. Если я жестко закодирую дочерние элементы jQuery по выбору, как это

<ol id="selectable">
                <li class="ui-state-default">test</li>
            </ol>

загружается под IIS.

Однако jQuery selectable дается детям динамически в следующем фрагменте ajax:

  function GetBusRoutes(parameters) {
         $.ajax({
                type: "POST", 
                 url: "/home/GetAvailableRoutes",  
                contentType: "application/json; charset=utf-8", 
                dataType: "json", 
                failure: function (msg) {
                    alert(msg);
                }, 
                success: function (msg) {
                    var selectable = $('#selectable');
                    $.each(msg, function(i, route) {
                        selectable.append($('<li/>', { "class": "ui-state-default", text: route.Name}));
                    });
                } 

         });
     }

и запрос HTTP GET в случае сбоя с 404, поскольку он пытается разрешить URL-адрес до http://localhost:80/home/GetAvailableRoutes вместо вызова действия моего контроллера, что и происходит, когда сайт работает в Visual Studio. Опубликует еще один вопрос по этому вопросу, если я не смогу определить правильный синтаксис для перехода к URL-адресу ajax.

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