Проблема с установкой пути к jquery в приложении mvc - PullRequest
3 голосов
/ 24 ноября 2008

У меня проблемы с установкой пути к jquery в приложении MVC. На главной странице у меня объявлен скрипт, а jquery работает в корне моего приложения. Когда я перехожу на страницу просмотра контента в моем приложении, jquery не загружается должным образом. Нужно ли указывать путь на странице содержимого или объявлять путь по-другому?

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

Ответы [ 4 ]

11 голосов
/ 24 ноября 2008

Хотя использование абсолютного пути будет работать для некоторых установок, у вас будут проблемы при установке в подкаталогах. Более безопасное решение - использовать Url.Content, который всегда будет правильно определять путь:

<script src="<%= Url.Content("~/Content/jquery-1.2.6.min.js") %>" type="text/javascript"></script>
2 голосов
/ 24 ноября 2008

Src на главной странице является относительным, который не будет работать на дочерних страницах. Это должно работать, если вы объявляете путь как абсолютный путь (например, "/Views/Scripts/jquery-1.2.6.min.js");

1 голос
/ 25 ноября 2008

Поскольку вы находитесь на главной странице, вы можете использовать

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

ResolveUrl - это метод, унаследованный от Control. Таким образом, MasterPage, который является производным от Control, может использовать его.

1 голос
/ 24 ноября 2008

Я бы предложил использовать вспомогательный метод

public static class Helper
{
    private static string ScriptsRoot = "~/views/scripts/";

    public static string ScriptUrl (string scriptFile)
    {
        return VirtualPathUtility.ToAbsolute (ScriptsRoot + scriptFile);
    }
}

И затем ссылка на ваш скрипт выглядит так:

<script type="text/javascript" src="<%= Helper.ScriptUrl("jquery-1.2.6.min.js") %>"></script>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...