1

我正在尝试学习 asp.net MVC,并且在将文本框值提交给模型时遇到问题。

我有一个文本框,用户将在其中输入一个数字,当他们点击路由链接时,路由链接将从文本框中获取值并将其分配给 .Page 项目之一。

<%=Html.TextBox("PageIndex")%>
<%=Html.RouteLink("Search", "UpcomingEvent", 
    New With {.Page = "I want to put value of PageIndex textbox here"})%>

如何将文本框的值分配给 .Page 变量?感谢您的时间和帮助!

4

2 回答 2

3

您不能这样做,因为 RouteLink 会在服务器上呈现。

如果您想基于用户输入构建一个没有回发的 URL,您将需要执行一些客户端脚本(即 JavaScript)。

于 2010-03-01T01:32:19.640 回答
1

听起来您不希望在输入文本框值后回发到服务器。如果是这种情况,那么您将需要使用 javascript 来更改链接的 href 属性。Html.RouteLink 都是在服务器端完成的。

如果您使用的是 jquery,那么它将类似于

$("#pageIndex").change(function()
  {
    $("#pageLink").href += "?pageIndex=" + $("#pageIndex")"
  }

当然,这不适用于触发多个更改事件,但这部分留给读者作为练习。

于 2010-03-01T01:32:51.763 回答