使用 Javascript 操作 Link 并将值传递给控制器
Action Link with Javascript and pass value to controller
我正在我的应用程序中使用操作 link。
我有一些要求在点击事件时调用 javascript。
我知道我可以使用以下代码做到这一点。
@Html.ActionLink("Home","Index","Main",new{@onclick="OnIndexCall"});
现在点击操作事件 link 我在函数中计算两个值,我还需要将这些值传递到我要重定向的页面。
我不知道该怎么做。
请问有什么方法可以将javascript函数中的计算值传递给重定向页面吗?
编辑:-
function OnIndexCall(){
var a=10;
var b=a+20;
}
现在我需要将这些 "a" 和 "b" 值传递到重定向页面。
在表单中创建两个隐藏字段。在提交表单之前分配值可能在 onClick 事件上。因此您将在 HttpPost 操作中获得这些值。
通过这种方式,您的值将不会显示在 URL(Query String)
中
HTML
<a href="/Main/Index" onclick="return OnIndexCall(this)">Home</a>
<form type="post" action="URL" id="myform">
<input type="hidden" name="a" id="a">
<input type="hidden" name="b" id="b">
</form>
JavaScript
function OnIndexCall(elem){
var a=10;
var b=a+20;
$("#a").val(a);
$("#b").val(b);
$("#myform").submit();
return false;
}
您可以通过 QueryString 传递数据,如下所示:-
@Html.ActionLink("Home","Index","Main",new{ @onclick="OnIndexCall(this)" });
function OnIndexCall(elem){
var a=10;
var b=a+20;
$(elem).attr('href', $(elem).attr('href') + '?a=' + a + '&b=' + b);
}
我正在我的应用程序中使用操作 link。
我有一些要求在点击事件时调用 javascript。
我知道我可以使用以下代码做到这一点。
@Html.ActionLink("Home","Index","Main",new{@onclick="OnIndexCall"});
现在点击操作事件 link 我在函数中计算两个值,我还需要将这些值传递到我要重定向的页面。
我不知道该怎么做。
请问有什么方法可以将javascript函数中的计算值传递给重定向页面吗?
编辑:-
function OnIndexCall(){
var a=10;
var b=a+20;
}
现在我需要将这些 "a" 和 "b" 值传递到重定向页面。
在表单中创建两个隐藏字段。在提交表单之前分配值可能在 onClick 事件上。因此您将在 HttpPost 操作中获得这些值。
通过这种方式,您的值将不会显示在 URL(Query String)
中HTML
<a href="/Main/Index" onclick="return OnIndexCall(this)">Home</a>
<form type="post" action="URL" id="myform">
<input type="hidden" name="a" id="a">
<input type="hidden" name="b" id="b">
</form>
JavaScript
function OnIndexCall(elem){
var a=10;
var b=a+20;
$("#a").val(a);
$("#b").val(b);
$("#myform").submit();
return false;
}
您可以通过 QueryString 传递数据,如下所示:-
@Html.ActionLink("Home","Index","Main",new{ @onclick="OnIndexCall(this)" });
function OnIndexCall(elem){
var a=10;
var b=a+20;
$(elem).attr('href', $(elem).attr('href') + '?a=' + a + '&b=' + b);
}