我需要将锚标记类名ID
传递给函数var ID
,其中var variable ID
值应该传递给@Url.Action("pharmaCompanyDetails", "PharmaCompany", new { pharmaID = ID })
传递给ID
pharmaID
值
代码:
<a class="detail" href="javascript:void(0)" title="Detail"><i class="glyphicon glyphicon-eye-open"></i></a>
按钮单击
'click .detail': function (e, value, row, index) {
alert('You click like action, row: ' + JSON.stringify(row.id));
var ID = JSON.stringify(row.id);
window.location.href = '@Url.Action("pharmaCompanyDetails", "PharmaCompany", new { pharmaID = ID })';
},
答案 0 :(得分:1)
在此代码中正在运行
location.href = "@Url.Action("pharmaCompanyDetails", "PharmaCompany")?pharmaID=" + ID;
答案 1 :(得分:0)
"@Url.Action("pharmaCompanyDetails", "PharmaCompany")"
服务器端由Razor和你所有的MVC火力渲染。 当您登陆页面时,它已被您选择的网址替换。
javascripts改为在客户端工作,因此只有在服务器端详细说明之后很久才点击按钮才会收到id。
所以,
'@Url.Action("pharmaCompanyDetails", "PharmaCompany", new { pharmaID = ID })'
因此,ID不能用作此参数。
所以你必须将ID附加到网址的末尾,如你所说:
location.href = "@Url.Action("pharmaCompanyDetails", "PharmaCompany")?pharmaID=" + ID;
答案 2 :(得分:0)
location.href = "@Url.Action("actionname", "controller")?pharmaID=" + ID;
这个c#代码
@Url.Action("actionname", "controller")
将转换为
controller/actionname
所以完整的网址将是
controller/actionname?pharmaID=ID;