C# 在url.action中添加js函数作为参数

C# 在url.action中添加js函数作为参数,c#,javascript,asp.net-mvc,url,webgrid,C#,Javascript,Asp.net Mvc,Url,Webgrid,我想在运行时更改文本框的值 我有一个JavaScript函数,它返回一个文本框值: function getValue(str) { var textboxValue = document.getElementById(str).value; return textboxValue; } 这是我的链接: wg.Column( header: " add ", format: @<text> <a href="@Url.Action(

我想在运行时更改文本框的值

我有一个JavaScript函数,它返回一个文本框值:

function getValue(str) {
   var textboxValue = document.getElementById(str).value;
   return textboxValue;
}
这是我的链接:

wg.Column(
        header: " add ", format: @<text>
        <a href="@Url.Action("updateOrder", "MyController", new { VaraId = item.id,  pris = // Here I want to call function getValue("pris") }) ">
      ADD NEW
        </a>
        </text>)
    ))

保持锚点标记干净,并为参数值设置HTML5数据属性

<a class="myLink" href="@Url.Action("updateOrder", "MyController")"
        data-itemid = @item.id data-pris="pris">ADD NEW </a>
假设已将jQuery加载到页面

如果getValue函数只是返回元素的值,那么可以使用jQuery选择器获取值

$(function(){

  $("a.myLink").click(function(e){
     e.preventDefault();
     var _this=$(this);
     var calculatedVal=$("#"+_this.data("pris")).val();
     var target=_this.attr("href")+"?VaraId="+_this.data("itemid")+
                                                       "&pris="+calculatedVal ;
     window.location.href=target;
  });

});

我认为这应该是另一个简单的解决方案,这个看起来很复杂
$(function(){

  $("a.myLink").click(function(e){
     e.preventDefault();
     var _this=$(this);
     var calculatedVal=$("#"+_this.data("pris")).val();
     var target=_this.attr("href")+"?VaraId="+_this.data("itemid")+
                                                       "&pris="+calculatedVal ;
     window.location.href=target;
  });

});