ASP.NET MVC и jQuery - маршруты и местоположения скриптов - PullRequest
1 голос
/ 08 мая 2009

Я играю с приложением для проверки концепции в ASP.NET MVC, и у меня есть вопрос о маршрутах при использовании jQuery. Одна из моих функций требует от меня вызова ~ / jqdata / myFunction /, и это нормально, используя

$.get("/jqdata/myFunction/" + $(this).attr("name"), function(data) { alert (data); }

Однако я не смогу управлять виртуальной директорией, в которую должно быть развернуто приложение. На странице Site.Master я могу отключить это поведение для стилей и js-файлов, например, с заголовком runat = "server" и ссылкой на "~ / Styles / site.css", но я понятия не имею чтобы jQuery вызывал правильный путь для получения своих данных.

Может ли кто-нибудь помочь, даже если это означает, что я называю меня идиотом за то, что я так поступаю, или упускаю что-то действительно очевидное? Понимаешь, я парень с волнообразными формами. :)

Спасибо Marc

1 Ответ

4 голосов
/ 08 мая 2009

Вы можете использовать код на стороне сервера, чтобы установить корень вашего веб-сайта в качестве переменной в JavaScript, возможно, в вашей MasterPage или, возможно, просто в представлениях, которые вам нужны для:

var rootUrl = '<%= Html.ResolveUrl("~/")%>';

Тогда ваша функция будет выглядеть примерно так:

$.get(rootUrl + "jqdata/myFunction/" ...);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...