如果您的控制器操作需要一个id查询字符串参数:
var url = '@Url.Action("Action", "Controller")?id=' + rowid;
或者如果你想将它作为路由的一部分传递,你可以使用replace:
var url = '@Url.Action("Action", "Controller", new { id = "_id_" })'
.replace('_id_', rowid);
如果你要发送一个AJAX请求,另一种可能性是将它作为POST请求的一部分传递:
$.ajax({
url: '@Url.Action("Action", "Controller")',
type: 'POST',
data: { id: rowid },
success: function(result) {
}
});
如果你使用GET方法,也可以将其作为查询字符串参数:
$.ajax({
url: '@Url.Action("Action", "Controller")',
type: 'GET',
data: { id: rowid },
success: function(result) {
}
});
所有这些假设你的控制器操作当然需要接受一个id参数:
public ActionResult Action(string id)
{
...
}
因此,您可以看到有许多实现相同目标的方法。
url
变量执行什么操作?您希望浏览器如何导航离开当前页面?你写了什么代码?我无法读取你的想法。 - Darin Dimitrov$.get(url, function (result)){ }
,但发现我的错误很愚蠢,我没有创建结果容器。现在它可以工作了。谢谢。 - nebula@Url.Action("Action", "Controller")
是razor语法。JavasScript(即onRowSelected
事件处理程序)将在浏览器中执行,它不知道@Url.Action
的任何信息。我有什么遗漏吗? - LP13