サファリで複数のファイルを提出する必要があります。
https://github.com/weixiyen/jquery-filedropを使用していますが、Safari をサポートしていないため、iframe を使用しようとしています:
<input type="file" id="browse" name='files[]' multiple />
<form id="formUp" name="formUp" method="post" enctype="multipart/form-data">
<input type="hidden" name="sessionId" id="sessionId" value="9101" />
<iframe style="position: absolute; opacity: 0;" allowTransparency="true" id="iframe" src='' frameborder="0" width="0" height="0" name="iframe"></iframe>
</form>
入力ファイルはフォームの外側にあります。これは、その場所が既にフォーム内にあるためです。
MVC:
public virtual ActionResult Create(IEnumerable<HttpPostedFileBase> files, int sessionId)
{
foreach (HttpPostedFileBase file in files)
{
}
}
Javascript:
function safariLoad()
{
$("#browse").change(function ()
{
$("#formUp").attr("action", "/SessionPicture/Create");
$("#sessionId").val($("#Session_Id").val());
$("#formUp").attr("target", "iframe");
$("#formUp").submit();
}
問題は、MVC 側からのファイルで常に null を取得することです。
何か助けはありますか?
ありがとう。