3

メイン ビューと 2 つの部分ビューがあります。

1 部分ビューには次のものがあります。

  • ドロップダウンリスト
  • テキストボックス
  • ボタンを追加

2 番目の部分ビューには次のものがあります。

  • 2 つのテキストボックス
  • 最初の partialView の DropDownList の値を表示しているもの
  • 2 つ目は、1 つ目の部分ビューの TextBox の値を表示します。

私が達成しようとしている機能は、Click Eventが発生したときAdd Buttonに、データが 2 番目の部分ビュー内に表示されますDropDownList(さらに、の量は、受信した数に依存します)。現在、データを渡して保存する方法について混乱しています。TextBoxTextBoxesTextBoxesClicksAdd Button

DropDownList最初の部分ビュー (aとを含む) のコードは次のとおりTextBoxです。

<% using (Html.BeginForm("AddServices", "Controller1", FormMethod.Post, new { id = "form" }))
   {%>
<%: Html.ValidationSummary(true) %>
<div class="edit-set">
<label>Nature of Service:</label>
<div class="editor-field">
    <%: Html.DropDownList("ddlServiceType", (SelectList)ViewData["ServiceType"] as SelectList, "--Select Nature Of Service--", new { onchange = "FillServiceType();" })%>
    <%: Html.HiddenFor(model => model.Id)%>
    <label>Comment:</label>
    <input type="text" id="comment" />
</div>
<input type="submit" value="+ Add More Service(s)" onclick="InsertService()" name="submitButton"/>
</div><input type="submit" value="Done" name="submitButton"/>
<% } %>

ユーザーが必要なサービスを挿入した後、2 番目の部分ビューにあるすべてのテキスト ボックスの値をデータベースに挿入する必要があります。私の問題は、DB にデータを挿入せずに、すべての値を維持する必要があることです。[完了] ボタンをクリックすると挿入されます (2 番目の部分ビューでもテーブルを使用できますが、そのテーブルの値を DB に挿入できる必要があります)。

4

1 に答える 1

1

1 部分ビューをレンダリングする代わりに、レンダリング アクションを試します。

DropDown と Textbox の値を最初に DB に保存する必要がある場合は、最初にデータを送信する必要があります。

したがって、アクションは DB から必要なデータをフェッチして、2 番目の部分ビューをレンダリングし、それを返します。

レンダリング アクションを参照してください: http://haacked.com/archive/2009/11/17/aspnetmvc2-render-action.aspx

<% using (Html.BeginForm("AddServices", "Controller1", FormMethod.Post, new { id = "form" }))
   {%>
<%: Html.ValidationSummary(true) %>
<div class="edit-set">
<label>Nature of Service:</label>
<div class="editor-field">
    <%: Html.DropDownList("ddlServiceType", (SelectList)ViewData["ServiceType"] as SelectList, "--Select Nature Of Service--", new { onchange = "FillServiceType();" })%>
    <%: Html.HiddenFor(model => model.Id)%>
    <label>Comment:</label>
    <input type="text" id="comment" />
</div>
<input type="submit" value="+ Add More Service(s)" onclick="InsertService()" name="submitButton"/>
</div><input type="submit" value="Done" name="submitButton"/>


<%= Html.Action("MyAction", "Controller", new {ID = Model.id}) %>


<% } %>
于 2013-03-05T05:33:12.053 に答える