У меня есть сайт, который интенсивно использует AJAX, и для того, чтобы держать такие вещи, как URL-адреса, в разумном месте, я вывожу необходимые URL-адреса в блоке скрипта на странице, а затем использую ихв файле Javascript позже.
Примером этого может быть:
In Index.cshtml
<script>
if (!app.frontoffice)
app.frontoffice = {};
if (!app.frontoffice.urls)
app.frontoffice.urls = {};
if (!app.frontoffice.urls.index)
app.frontoffice.urls.index = "@Url.Action("index", "frontoffice", new { area = string.Empty, id = string.Empty })";
</script>
В файле JS где-то
$(function() {
$("myButton").click(function(e) {
$.ajax({
url: app.frontoffice.urls.index,
data: {
id: 55
},
success: ...
error: ...
});
});
});
Проблема в том, что сгенерированный URL-адрес создается следующим образом - /frontoffice
, обратите внимание, что он исключает действие index
,Это потому, что когда он был сгенерирован, мы дали ему пустое id
, поэтому, когда мы используем его, запрашиваемый URL-адрес на самом деле /frontoffic/55', not
/ frontoffice / index / 55 '..
.UrlHelper
, кажется, отбирает название действия из URL.Есть ли другой метод, который я могу использовать, который не удаляет элементы из URL?- Я надеялся получить ясное, многократно используемое решение, поскольку подобные вещи происходят по всему сайту.
СпасибоКирон