使用:vs'12 Razor asp.net MVC4互联网应用模板EF Code First
我想要操纵的Actionlink
@Html.ActionLink("Download", "ShowOpenAcreageSummaryReport", new { controller = "DataToExcel" }, new { id = "AddData" })
script
尝试此
$('#AddData').click(function (e) {
var optVal = $("#OptionsDrop").val();
var Xpro = $("#Prospects").val()
var Xcnty = $("#Countys").val()
var Xtwn = $("#TownShips").val()
var Xrng = $("#Ranges").val()
var Xsct = $("#Sections").val()
var href = "/DataToExcel/ShowLPRStandardLeaseReport/" + Xpro + Xcnty + Xtwn + Xrng + Xsct;
this.href = ""; //clears out old href for reuse
this.href = href; //changes href value to currently slected dropdown value
}
actionResult
接受这些传递的值
public ActionResult ShowLPRStandardLeaseReport(string pro, string cnty, string twn, string rng, string sec)
现在我知道这适用于1个变量,因为我在另一个页面上运行此代码,但它不能用于多个。
我也尝试在变量之间添加+ "/" +
,这对结果没有影响。
如何更改我的代码以便能够传递所有变量?
答案 0 :(得分:1)
您是否尝试使用some-url/?param1=test¶m2=test2
等GET参数?另请注意,this
指向点击处理程序中的#AddData
元素。如果要更改当前位置,请使用window.location.href = 'someurl';
?
是表示查询字符串参数开始的必要条件。
另请注意,您应该使用encodeURIComponent
对值进行编码,以确保生成有效的网址。