开发者

ActionLink routeValue from a TextBox

I'm working on the following:

1- The user enters a value inside a textBox.

2- then clicks edit to go to the edit view.

This is my code:

   <%=   Html.TextBox("Name") %>

开发者_如何学运维    <%: Html.ActionLink("Edit", "Edit")%> 

The problem is I can't figure out how to take the value from the textBox and pass it to the ActionLink, can you help me?


You can't unless you use javascript. A better way to achieve this would be to use a form instead of an ActionLink:

<% using (Html.BeginForm("Edit", "SomeController")) { %>
    <%= Html.TextBox("Name") %>
    <input type="submit" value="Edit" />
<% } %>

which will automatically send the value entered by the user in the textbox to the controller action:

[HttpPost]
public ActionResult Edit(string name)
{
    ...
}

And if you wanted to use an ActionLink here's how you could setup a javascript function which will send the value:

<%= Html.TextBox("Name") %>
<%= Html.ActionLink("Edit", "Edit", null, new { id = "edit" })%> 

and then:

$(function() {
    $('#edit').click(function() {
        var name = $('#Name').val();
        this.href = this.href + '?name=' + encodeURIComponent(name);
    });
});
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜