我有一個呈現兩個部分視圖的主視圖。主視圖包含表單中的兩個部分視圖。每個部分視圖還包含表單。所有3個視圖共享相同的視圖模型。我想要做的是用主視圖封裝所有視圖中的數據,並使用局部視圖運行特定的控制器操作結果。Html.BeginForm中的Html.BeginForm MVC3
我想知道這是否可能。調試時,我發現我的內容總是發佈到主視圖窗體的HTTPPost。我相應地爲每個表單提交按鈕。對於代碼發佈感到抱歉,它出現了所有分裂。
主視圖:
@using (Html.BeginForm("Main", "Registration", FormMethod.Post,
new { @class="mainform" }))
{
<form>
<fieldset>
<div id ="option1" class="conglomerate">
@Html.Partial("_GetBusiness")
</div>
<div id ="option2" class="dealership">
@Html.Partial("_GetLocation")
</div>
<button type="submit" value="Create" class="buttonBlue" id="">
<span>Create a new dealer</span>
</button>
</fieldset>
</form>
部分1
@using (Html.BeginForm("CreateBusiness", "Business", FormMethod.Post,
new { @class="buisinessform" }))
{
<form>
<div class="editor-field">
@Html.DropDownListFor(m =>m.BusinessId, new SelectList(Model.Businesses,
"BusinessId", "BusinessName"), "")
</div>
<label>Your company not listed? Register yours below:</label>
<div class="editor-label">
@Html.LabelFor(model => model.BusinessName)
</div>
<div class="editor-field">
@Html.EditorFor(model => model.BusinessName)
@Html.ValidationMessageFor(model => model.BusinessName)
</div>
<button type="Button" value="" class="buttonBlue"id="TestSubmit">
<span>Add Dealer</span>
</button>
<div class ="confirm">
<button type="submit" value="Create" class="buttonBlue" id="">
<span>Click here to confirm dealer addition</span>
</button>
</div>
</form>
}
阿門。也許是一個很好的附加問題,這些部分可以封裝窗體而不是嵌套窗體嗎? – 2013-02-20 02:26:16
謝謝你們,我不太瞭解這個概念。是的,這些都是我需要的另一種方式。哪個是將從兩個部分視圖獲得的ID值傳遞迴視圖模型。 – WiseGuy 2013-02-20 02:42:59
@BenjaminRandal - 您可以通過簡單地將所有數據作爲單個帖子發佈到一起來實現。 – 2013-02-20 03:26:31