/ / Позоваване на jQuery в cshtml с помощта на HTML helper - jquery, контролер на моделен изглед, html-helper, global-asax

Препращане на jQuery в cshtml посредством HTML помощник - jquery, модел-view-controller, html-helper, global-asax

Обикновено препращам към jQuery, използвайки:

<script src="@(Url.Content("~/JavaScript/jquery.maskedinput-1.2.2.js"))" type="text/javascript"></script>

Позовавам същото Jquery в много страници. Всяка промяна в статичното съдържание (име или номер на версията) изисква всички изгледи да се актуализират, за да поемат промяната. За да реша това, опитах да създам маршрути в файл Global.asax за Jquery като по-долу

routes.MapRoute("jquery.maskedinput.js", "Javascript/jquery.maskedinput-1.2.2.js");

и се опитах да го извикам в cshtml с помощта на Html Helper като по-долу

 <script src="@Html.RouteLink("maskedinput","jquery.maskedinput.js") " type="text/javascript"></script>

Знам, че RouteLink връща маркер за котва и затова Източникът не е правилно настроен за зареждане на Jquery.

Изисквания:

  1. Има ли друг помощник на Html, който може да върне само виртуалния път (или)
  2. Трябва да посоча Jquery с име, а не с път. Пътя трябва да бъде деклариран някъде глобално, така че една промяна в глобален файл може да реши целта.

Помогнете ми моля.

Отговори:

2 за отговор № 1

Използвам този метод за моя BundleCollection с System.Web.Optimization виждам въпросът ми, но това все още работи дори и с него.

namespace PROJECT.Classes
{
public class JSBundles
{
public static string Test = "/scripts/test.js";
}

след това го използвайте по следния начин:

<script src="@(JSBundles.Test)" type="text/javascript"></script>

което прави

<script src="/scripts/test.js" type="text/javascript"></script>

Имайте предвид, че това изисква препратка към вашето мнение PROJECT.Classes или където и да го сложите. Имам тази настройка в моята web.config в папката изгледи.

....
<add namespace="PROJECT.Classes" />
</namespaces>
</pages>
</system.web.webPages.razor>

1 за отговор № 2

Можете да използвате популярния и страхотен RequireJS, за да инжектирате jquery (и всякакви други js зависимости), като използвате JavaScript, вместо да ги обслужвате ръчно

http://requirejs.org/docs/jquery.html предоставя инструкции за настройка и употреба