剃刀视图中的Javascript url操作
Javascript url action in razor view
我有一个获取rowid的javascript方法onRowSelected
。如何在具有HttpGet
的控制器的某些操作中传递rowid?
function onRowSelected(rowid, status) {
alert('This row has id: ' + rowid);
//url: @Action.Url("Action","Controller")
//post:"GET"
// Something like this?
}
如果控制器操作需要id查询字符串参数:
var url = '@Url.Action("Action", "Controller")?id=' + rowid;
或者,如果你想通过它作为路线的一部分,你可以使用替代:
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)
{
...
}
正如你所看到的,有很多方法可以实现同样的目标。
Darin的方法将非常完美。
我建议Razor视图使用jsp 中的@Html.actionlink
使用模型值的另一种方法
var URLvalue='@Html.ActionLink("UserString", "action", new { routeValueName1 = "__value1__", routeValueName2="__value2__" }, htmlAttributes: new { @class = "btn btn-default", @role = "button" })'
.replace('__value1__', Model.somevalue).replace('__value2__', Model.somevalue);
您可以在jsp或jquery中的任意位置使用URLvalue。
相关文章:
- 一个jsp中有两个操作URL
- 使用Javascript/jQuery以编程方式将当前锚点/哈希/片段附加到任何表单操作url
- 更改跳转到URL操作SSRS 2008 R2的链接目标属性(rc:LinkTarget)
- ASP.Net MVC 脚本无法使用控制器的默认操作 URL.使用控制器/操作 URL 也是如此
- 在浏览器操作中修改当前选项卡的URL的TLD
- 使用AngularJS和ServiceStack Web服务获取('url')操作
- 剃刀视图中的Javascript url操作
- 如果没有连接,则停止url操作
- 动态更改表单操作url
- jQuery:$.ajax() 重定向到其 URL 表单操作参数,而不是对表单操作执行 AJAX 请求
- Javascript Url 操作和后退导航
- 使用内置的 like 操作 (og.likes) 检查当前用户是否喜欢某个 URL
- 传递 js 变量以形成操作 url
- 如何使用jQuery检查图像URL是否为空并执行某些操作
- jQuery 选项卡悬停操作并单击 URL 键
- ASP.Net JavaScript 表的 MVC 操作链接/URL 操作 - datatable.net
- 如何使表单在提交 url 操作时不打开新窗口
- javascript中的url操作
- 主干集合url操作与输入字段文本
- 如何从 Javascript 调用 URL 操作