私はfancyboxを使用しており、アンカータグをクリックすると、次のようにiframeを開いています:-
<a href="/Files/Upload/?personId=@Model.PersonID" class="iframe UpdateLink privilegeLevelIdentityForFile" data-privilegelevelid="@Model.PrivilegeLevelInfoForCurrentUser.PrivilegeLevelInfo.LevelId" title="Upload file(s)">[ + ]</a>
iFrame は次のようなフォームで構成されています:-
<div id="divUploadForm">
@using (Html.BeginForm("UploadSpecifiedFileToS3Completed", "Files", FormMethod.Post, new { id = "uploadForm", enctype = "multipart/form-data" }))
{
@Html.DropDownList("PrivilegeLevelId", new SelectList((IEnumerable<iNGRID_Data.Security.PrivilegeLevel>)ViewData["PrivilegeLevelsList"], "LevelId", "LevelName"))
<hr />
<p>
<input type="submit" value="Upload" id="uploadButton" class="button" />
</p>
}
</div>
iframeでドロップダウンの値を設定しようとしているときに、次の関数を使用しています
$('.privilegeLevelIdentityForFile').click(function () {
var privilegeLevelId = $(this).data("privilegelevelid");
alert(privilegeLevelId);
$("#uploadForm").contents().find('#PrivilegeLevelId').val(privilegeLevelId);
});
アラートは正しく取得していますが、値を設定できません。
助けてください。