Подтвердить что ты не робот

Asp.net mvc4 jquery не работает

Я пытаюсь запустить код jquery, который был помещен в мой _Layout.cshtml, как показано ниже:

...............
<script type='text/javascript'>
$(document).ready(function () {
   alert('Test');

});
</script>
  @Scripts.Render("~/bundles/jquery")
  @RenderSection("Scripts", required: false) 
</body>
</html>

Вышеупомянутый код не был запущен, и когда я проверил Chrome Dev, он показал, что $не определен (я могу видеть, что загружаются все мои jquery, файлы jquery ui)

Он работал, если я поместил этот код во внешний файл js

Я не против помещать весь мой код jquery во внешние файлы, но на самом деле хочу уточнить, где я делаю неправильно.

4b9b3361

Ответ 1

Вам нужно ввести jquery перед script.

@Scripts.Render("~/bundles/jquery")

<script type='text/javascript'>
$(document).ready(function () {
   alert('Test');

});
</script>

  @RenderSection("Scripts", required: false) 
</body>
</html>

Ответ 2

Андреас, у меня такая же проблема.. по умолчанию у "_layout.cshtml" есть "@Scripts.Render(" ~/bundles/jquery ")" в конце документа, но он не работает. Я разрезаю его и вставляю в голову, и теперь он работает.

Ответ 3

Чтобы jQuery работал, ваш script должен появиться после <script src="/Scripts/jquery-2.0.3.js"></script>

В _Layout.cshtml, перед тегом </body> вы можете найти что-то вроде этого

@Scripts.Render("~/bundles/jquery")
@RenderSection("scripts", required: false)

Сначала у вас есть библиотека jQuery. Тогда у вас есть сценарии. Что это значит. Таким образом, в ваших представлениях что-то вроде этого.

@section scripts{
 //your script
}

Это гарантирует, что все сценарии попадают под ссылку jQuery.