Я пишу AJAX вызова, который выглядит следующим образом:Использование Бритва в Jquery
<script type="text/javascript">
$(function() {
$.ajax({
url: @(Url.Action("_ModulePartial", "Home")),
dataType: 'html',
success: function(data) {
$('#_ModulePartial').html(data);
},
});
});
</script>
}
я хочу вызвать действие _ModulePatial в главном контроллере по умолчанию в зоне с использованием Url.Action
<script type="text/javascript">
$(function() {
$.ajax({
url: /Home/_ModulePartial,
dataType: 'html',
success: function(data) {
$('#_ModulePartial').html(data);
},
});
});
</script>
}
/Главная/_ModulePartial отлично работает, но я хочу добиться этого, используя @ Url.Action, потому что у нас есть 2 разных URl http: /TestUrl.com/Test/User/Login и http://TestUrl.com/User/Login, поэтому указанный выше Url не будет работать под одним из серверов. поскольку 1st Url содержит «Test», он не может найти Домашний контроллер.
Мы можем использовать Url.Action в JQuery?
Firebug дает эту ошибку
SyntaxError: missing } after property list
[Break On This Error]
url: /Home/_ModulePartial,
при попытке вызова с помощью @ Url.Action в 1-й сценарий
Чтобы развернуть это, помните, что вызовы ASP.NET, такие как Razor, выполняются на уровне сервера, прежде чем страница будет отправлена клиенту. То, что вы делаете, - это установка заполнителя для текста, который должен быть введен сервером. После отправки страницы клиенту текст-заполнитель уже будет изменен. jQuery - это клиентский язык и интерпретируется браузером. Весь серверный код будет заменен, и браузер увидит только результат вызовов ASP.NET. Я надеюсь, что в этом есть смысл. – Apache