いくつかのドロップダウンリストを含むMVCビューがあります。特定の条件下でドロップダウンリストの横にアクションリンクが表示されるというカスタム検証があります。これらのアクションリンクは、ドロップダウンリストで行われた選択に関連する情報を含むモーダルウィンドウをポップアップ表示します。
私の問題は、ドロップダウンから選択した値を取得して、それをajaxリクエストに取り込む方法がわかるように見えることです!!
これが私のコードです:(ドロップダウン)
<div id="holderlist">
@Html.DropDownListFor(i => i.holderid, (SelectList)ViewData["holdersList"], "", new { @class = "chosenlist" })
</div>
(アクションリンク)
<div id="add" style="display:none;">
@Html.ActionLink("Actions", "existingOfficers", "Roles",
new { id = ?????<how do I get DDL chosen ID here> },
new { @class = "openDialog", dialog_id = "productDetail", dialog_title = "Workflow Centre" })
</div>
(ajaxリクエスト)
<script type="text/javascript">
$.ajaxSetup({ cache: false });
$(document).ready(function () {
$(".openDialog").live("click", function (e) {
e.preventDefault();
$("<div></div>")
.addClass("dialog")
.attr("id", $(this).attr("dialog-id"))
.appendTo("body")
.dialog({
title: $(this).attr("dialog-title"),
close: function () { $(this).remove() },
modal: true,
width: 706,
height: 300
})
.load(this.href);
});
$(".close").live("click", function (e) {
e.preventDefault();
$(this).closest(".dialog").dialog("close");
});
});
私ができないことは、DDLで選択された値のIDに設定されたIDを取得することです。これは本質的に新しい入力フォームであるため、DDL値はこの時点ではデータベースに保存されません。
どんな助けでも大歓迎です:-)