jQuery в приложении ASP.net MVC с использованием мастер-страниц - PullRequest
13 голосов
/ 16 декабря 2008

Я пытаюсь заставить простой jQuery выполнить на моей странице контента, но мне не повезло, вот что я пытаюсь:

<asp:Content ID="Content1" ContentPlaceHolderID="MainContent" runat="server">

   <script src="../../Scripts/jquery-1.2.6.js" type="text/javascript"></script>
   <script type="text/javascript">

       $(document).ready(function() {
           alert("hi");
       });   
   </script>

</asp:Content>

Я также пытался заставить работать следующее:

<asp:Content ID="Content1" ContentPlaceHolderID="MainContent" runat="server">

   <script src="../../Scripts/jquery-1.2.6.js" type="text/javascript"></script>
   <script type="text/javascript">
       function onload()
       {
          $("#myDiv").css("border", "1px solid green");
       }
   </script>

   <div id="myDive">
      Hello
   </div>

</asp:Content>

Ответы [ 3 ]

35 голосов
/ 16 декабря 2008

Возможно, файл JQuery не найден, попробуйте это для ссылки на скрипт:

<script src="<%= Url.Content ("~/Scripts/jquery-1.2.6.js") %>" type="text/javascript"></script>

Url.Content создаст правильный путь независимо от того, запущено ли приложение в корневом каталоге или подкаталоге.

Кроме того, если вы установили исправление для JS intellisense, вы можете использовать его в дополнение к приведенному выше:

<% if (false) { %>
    <!-- Don't wrap this is a Url.Content call, it's like this so we get intellisense! -->
    <script src="../../Scripts/jquery-1.2.6-vsdoc.js" type="text/javascript"></script>
<% } %>

Edit:

С момента выхода RC 1 Refresh существует известная ошибка при размещении элементов с блоками кода в заголовке, у Филипа Хаакеда есть статья о ее решении ...

Редактировать 2:

Видимо, это было исправлено после выпуска RC 2 ...

• Слепки кода, которые являются прямыми дочерними элементами элемента head, не вызывают исключения, если к ним добавлен атрибут runat = "server".

Редактировать 3:

Исправление, упомянутое ранее, применимо только к VS2008 и доступно здесь - подробности см. В блоге команды разработчиков VS Web здесь . VS2010 имеет его встроенный.

0 голосов
/ 17 июня 2009

Нужно использовать для правильной публикации сайта, но это неприятно, когда вы работаете с дизайнером, который просто знает, как использовать Photoshop и Dreamweaver

0 голосов
/ 17 декабря 2008

Попробуйте разместить ссылки на JavaScript на своей мастер-странице. Тогда вам не нужно беспокоиться о попытке загрузить сценарии несколько раз.

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