2012-09-04 34 views
6

我有以下形式ASP.NET MVC傳遞表單值的操作方法

<form name="SearchForm" method="post" id="SearchForm" action="/Search/"> 

而下面的按鈕

<input type="button" onclick="javascript:document.SearchForm.submit();" class="btn-leftsearch"> 

在點擊這個按鈕,表單提交和調用此方法

[HttpPost] 
public ActionResult Index(string querystring) 
{ 
    return View(); 
} 

當然querystring爲null。我想將查詢字符串或最好是其他表示字段的其他字段傳遞給控制器​​。我曾嘗試使用表單標籤中的action屬性進行遊戲。我試圖將數據添加到按鈕中的onclick方法。沒有任何工作。所有我想要做的是通過這樣的

Search?pri=all&amenity=pool etc 

一些數據在控制器中我會像

[HttpPost] 
public ActionResult Index(string pri, List<string> amenities) 
{ 
    ... 
} 

誰能告訴我怎麼可以將此數據傳遞給視圖?

回答

11

我想建議你,你可以使用下面的代碼片段來解決你的問題。

[AcceptVerbs(HttpVerbs.Post)] 
public ActionResult Index(FormCollection collection) 
{ 
    string valueFromNameTextBox = collection["name"]; 
} 

關於收集請把名稱的搜索文本框。您將獲得實際輸入的值。 您可以使用表單上所有輸入的名稱將此索引編入此集合。

+1

我明白了,但我還有一些其他數據,我也想通過不在表單域。我如何通過這些? –

相關問題