ASP.Net MVC通过ActionLink发送textbox.Text

时间:2011-03-24 14:59:47

标签: asp.net-mvc

我有这个控制器:

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}) %>

我的目标是在文本框中输入值,单击按钮,然后重定向到显示用户详细信息的新视图。

2 个答案:

答案 0 :(得分:2)

这只能使用Javascript;您可以处理链接的click事件并明确导航到该网址。

使用jQuery:

$('#link').click(function() { 
    location = "/Customer/Index/" + encodeUriComponent($('#memberId').text());
});

如果您想在没有Javascript的情况下执行此操作,则可以制作包含文本框和<input type="submit" />的表单。

答案 1 :(得分:0)

由于您希望用户单击按钮,请将链接更改为按钮,并在主页的http post方法中,重定向到传递memberId的客户/索引视图。