2
我正在处理以下内容:TextBox中的ActionLink routeValue
1-用户在文本框内输入一个值。然后点击编辑进入编辑视图。
这是我的代码:
<%= Html.TextBox("Name") %>
<%: Html.ActionLink("Edit", "Edit")%>
问题是我无法弄清楚如何从文本框中取的值,并把它传递给ActionLink的,你能帮帮我吗?
我正在处理以下内容:TextBox中的ActionLink routeValue
1-用户在文本框内输入一个值。然后点击编辑进入编辑视图。
这是我的代码:
<%= Html.TextBox("Name") %>
<%: Html.ActionLink("Edit", "Edit")%>
问题是我无法弄清楚如何从文本框中取的值,并把它传递给ActionLink的,你能帮帮我吗?
你不能,除非你使用JavaScript。一种更好的方式来实现,这将是使用的一种形式,而不是一个ActionLink
:
<% using (Html.BeginForm("Edit", "SomeController")) { %>
<%= Html.TextBox("Name") %>
<input type="submit" value="Edit" />
<% } %>
,它会自动发送用户在文本框中输入到控制器动作值:
[HttpPost]
public ActionResult Edit(string name)
{
...
}
而且如果你想使用ActionLink的这里是如何你可以设置一个javascript函数将发送值:
<%= Html.TextBox("Name") %>
<%= Html.ActionLink("Edit", "Edit", null, new { id = "edit" })%>
,然后:
$(function() {
$('#edit').click(function() {
var name = $('#Name').val();
this.href = this.href + '?name=' + encodeURIComponent(name);
});
});
这将路由到/ SomeController /编辑 没有名称值 – Lisa 2011-04-29 23:20:31
@Shaza,是的,正好。与ActionLink相同。您只需指定定义此编辑操作的控制器即可。 – 2011-04-29 23:20:49
如何路由到/ someController/Edit/Sam? – Lisa 2011-04-29 23:23:06