2012-03-19 24 views
0

我有一個PartialView,我需要在其上創建一個按鈕,並且一旦用戶單擊此按鈕,它就必須向接收該模型的控制器發送一個HTTPGET。如何從PartialView中調用HTTPGET操作?如何從MVC3中的PartialView調用控制器

任何想法如何在MVC3做到這一點?

回答

1

可能是該解決方案的工作:

<form method="get" action="controllerName" enctype="multipart/form-data"> 
@html.partial("viewName") 
<input type="submit" value="Send" ... /> 
</form> 
+0

它不起作用。 – 2012-03-19 08:56:50

+0

爲什麼?是否出現任何錯誤?或數據不發送? – 2012-03-19 09:41:50

+0

數據只是不發送。我有這個。 <形式方法= 「GET」 行動= 「項目」 ENCTYPE = 「多部分/格式數據」>

項目詳細信息 @foreach(VAR在模型項) { .......
它說,行動=「工程」項目不存在 – 2012-03-19 09:53:35

1

有幾種方法可以實現此目的。最簡單的方法是使用ajax請求使用jQuery(http://api.jquery.com/jQuery.get/)將數據發送回控制器。不過,我不會使用HTTP GET。儘管沒有強制執行,但最好堅持使用HTTP謂詞,即GET用於接收數據,POST用於將數據發送到服務器。

1

使用它來創建你的局部視圖的形式,

@{using (Html.BeginForm("Create", "Person", FormMethod.Get, new { 
                enctype = "multipart/form-data", 
                id = "<id of the form>" })) 
{ 

//body of your form 

} 

在這裏你可以看到,形式方法的類型已被通過作爲「FormMethod.Get」的Html.BeginForm方法。如果您想將響應發送到Post方法,請使用「FormMethod.Post」。

+0

感謝您的帖子,但我如何獲得表格的ID? – 2012-03-19 09:02:21

+0

這是你喜歡的任何東西。 Id僅用於從JavaScript等腳本語言中唯一標識表單。 – 2012-03-19 11:29:49