Я написал следующий jquery в своем частичном представлении:
$.ajax({
type: "POST",
url: '@Url.Action("PostActionName", "ControllerName")',
data: { Id: "01" },
success: function(data)
{
if (data.success="true")
{
window.location = '@Url.Action("GetActionName", "ControllerName")'
}
}
});
Имя действия и имя контроллера не фиксированы, они должны меняться в зависимости от представления, в котором размещено это частичное представление. У меня есть функции для получения имен вызывающих действий и контроллеров, но я не знаю, как передать их в @Url.Action.
Ниже приведены функции Javascript для получения имен действий и контроллеров:
function ControllerName() {
var pathComponents = window.location.pathname.split('/');
var controllerName;
if (pathComponents.length >= 2) {
if (pathComponents[0] != '') {
controllerName = pathComponents[0];
}
else {
controllerName = pathComponents[1];
}
}
return controllerName;
}
function ActionName() {
var pathComponents = window.location.pathname.split('/');
var actionName;
if (pathComponents.length >= 2) {
if (pathComponents[0] != '') {
actionName = pathComponents[1];
}
else {
actionName = pathComponents[2];
}
}
return actionName;
}
Url.Action
. Они вполне могут быть переменными. - person David Hedlund   schedule 17.04.2013