1

asp.net MVC を学習しようとしていますが、テキスト ボックスの値をモデルに送信する際に問題が発生しています。

ユーザーが数字を入力するテキストボックスがあり、ルートリンクにヒットすると、ルートリンクはテキストボックスから値を取得し、.Page アイテムの 1 つに割り当てます。

<%=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 に答える