私はこのASP.NET MVC Using two input with Html.BeginForm questionの説明と同じことをしようとしていますが、プロジェクトに適用する方法が本当にわからないほどの違いがあります:
3つのドロップダウンリスト(プロファイルリスト、接続された給与リスト、接続されていない給与リスト)を持つビューがあります
次のようになります。
<div class="row bgwhite">
@using (Html.BeginForm("GetConnectedSalaries", "KumaAdmin", FormMethod.Get, new { Id = "ProfileListForm" }))
{
<div class="four columns list list1">
@Html.DropDownList("Profiles", (SelectList) ViewBag.Profiles, "--Välj profilgrupp--",
new
{
//onchange = "$('#ProfileListForm')[0].submit();"
// Submits everytime a new element in the list is chosen
onchange = "document.getElementById('ProfileListForm').submit();"
})
</div>
}
@using (Html.BeginForm("Index", "KumaAdmin", FormMethod.Get, new { Id = "SalaryListForm" }))
{
<div class="four columns list list2" style="margin-top:-19px;">
@Html.DropDownList("Salaries", (SelectList) ViewBag.Salaries, "--Kopplade LöneGrupper--")
</div>
}
@using (Html.BeginForm("GetNOTConnectedSalaries", "KumaAdmin", FormMethod.Get, new { Id = "NotConSalaryListForm" }))
{
<div class="four columns list list2" style="margin-top:-19px;">
@Html.DropDownList("Salaries", (SelectList)ViewBag.NotConSalaries, "--Ej Kopplade LöneGrupper--")
<input style="float: left;" type="submit" value="Knyt" />
</div>
}
</div>
上記のように、プロファイル リストの要素を変更すると、フォームを送信し、「接続された給与リスト」に入力する次の actionresult を呼び出すスクリプト コードがあります。
[HttpGet]
public ActionResult GetConnectedSalaries(int Profiles = -1)
{
Model.SalaryGroups = AdminManager.GetConnectedSalaries(Profiles);
ViewBag.Salaries = new SelectList(Model.SalaryGroups, "Id", "SalaryName", "Description");
return (Index());
}
私がしたいこと:
profilelist で要素を選択したとき、2 つの actionresults を呼び出したいと思います。上に示したものと、「接続されていない給与」を含む 3 番目のリストを普及させる 2 つ目のものです。2 番目のアクションの結果:
public ActionResult GetNOTConnectedSalaries(int Profiles = -1)
{
Model.SalaryGroups = AdminManager.GetNOTConnectedSalaries(Profiles);
ViewBag.NotConSalaries = new SelectList(Model.NotConSalaryGroups, "Id", "SalaryName", "Description");
return (Index());
}
AJAX/JSON、厳密には MVC でこれを行いたくありません。上記でリンクした質問を読みましたが、それを自分のプロジェクトに適用する方法、または同じことが可能かどうかさえわかりませんでした。
さらに情報が必要な場合は、お尋ねください。提供できるよう最善を尽くします。
ありがとうございました!