我有这个控制器:
public ActionResult Index(int id)
{
var cust = (from c in dataModel.Customers
where (c.MembershipID == id)
select c).First();
return View(cust);
}
我希望能够从主页上的文本框中传递ID。我尝试了以下但它说'memberid'不存在。有任何想法吗?感谢。
<asp:TextBox ID="memberid"/>
<%: Html.ActionLink("Customer", "Index", new {id = memberid.Text}) %>
我的目标是在文本框中输入值,单击按钮,然后重定向到显示用户详细信息的新视图。
答案 0 :(得分:2)
这只能使用Javascript;您可以处理链接的click
事件并明确导航到该网址。
使用jQuery:
$('#link').click(function() {
location = "/Customer/Index/" + encodeUriComponent($('#memberId').text());
});
如果您想在没有Javascript的情况下执行此操作,则可以制作包含文本框和<input type="submit" />
的表单。
答案 1 :(得分:0)
由于您希望用户单击按钮,请将链接更改为按钮,并在主页的http post方法中,重定向到传递memberId的客户/索引视图。