Использование jQuery со страницы модуля Orchard - PullRequest
12 голосов
/ 25 февраля 2011

Я пытаюсь изменить часть Orchard.Search с помощью формы поиска и кнопки, чтобы они выглядели и вели себя так, как я хочу. Для этого мне нужно использовать некоторые функции jQuery.

Я добавил это в заголовок Search.SearchForm.cshtml файла:

Script.Require("jQuery");

и по выводу страницы я вижу, что jquery добавляется внизу HTML, перед конечным тегом:

<script src="/Orchard.Web/Modules/Orchard.jQuery/scripts/jquery-1.4.2.js" type="text/javascript"></script>

, который выглядит хорошо. Вот где находится библиотека jQuery, и я могу скачать ее из этого места без пробников. Я также добавил небольшой тестовый скрипт на страницу, чтобы посмотреть, работает ли jQuery правильно:

<script language="javascript" type ="text/javascript">

$(document).ready(function () { 
  alert('page loaded');
});

</script>

Но он никогда не запускается, и я получаю эту ошибку сценария: Uncaught ReferenceError: $ не определено

Я устал от этого, слишком много хлопот, но, думаю, я все делаю неправильно ...

Редактировать: Добавил тег jquery и попытался ответить на вопрос о Script.Foot (), который, кажется, работает:

@using(Script.Foot()) {
    <script type ="text/javascript">
    //<![CDATA[
        $(document).ready(function () {
            alert('page loaded');
        });
    //]]>
    </script>
}

1 Ответ

25 голосов
/ 26 февраля 2011

Что ж, ваш скрипт должен появиться после включения jQuery, иначе $ не имеет смысла. Вы можете добавить свой скрипт, обойдя его с помощью @using (Script.Foot) {...}:

@using(Script.Foot()) {
    <script type ="text/javascript">
    //<![CDATA[
    $(document).ready(function () { 
        alert('page loaded');
    });
    //]]>
    </script>
}
...