2010-01-14 223 views
0

可能會這麼簡單。但是,我很難找出答案。如何將Html.TextBox傳遞給控制器​​?

我有一個控制器用不同的動作調用DB代碼並返回結果。我想將文本框的值傳遞給控制器​​中的不同動作。

怎麼辦?我知道,我可以通過使用表單傳遞值。但是,我不知道如何從單個視圖調用控制器中的不同動作。

回答

0

我不知道你所使用的語言或框架,但在ASP.NET MVC輸入控件ID映射到操作參數,所以如果你有一個文本框:

<input type="text" name="firstName" id="firstName/> 

然後當這種形式被髮布到你的行動,該框架與操作參數匹配它通過從POST數據文本框的值:

public ActionResult UpdateUser(string firstName) 
{ 
    User user = UserManager.UpdateUser(this.CurrentUserId, firstName); 
    return View(user); 
} 
+0

對不起嘗試

Requst["value"] 

。我正在使用MVC。如果我使用表單,那麼我不知道如何從同一視圖調用不同的操作。 – sam26092004 2010-01-14 16:51:02

0

剛剛有同樣的問題,並整理它。 Html.TextBox中的字符串參數的名稱必須與它將要使用的控制器方法中的參數相匹配,否則控制器中的參數將以null結尾。例如:

在視圖 -

<%= Html.TextBox("value") %> // argument is named "value" 

控制器方法 -

[HttpPost] 
public ActionResult ControllerName(string value) // parameter named the same as argument 
{ //code here } 
0

我瀏覽,發現這個問題。如果這些選項沒有工作,也許你可以在你的控制器