ユーザーからファイルの説明を取得した後、複数のファイルアップロードでscriptDataからファイルの説明を渡しています..
<script type="text/javascript">
var uploadQueue = new Array();
$(window).load(
function () {
$("#fileuploader").fileUpload({
'uploader': '/Scripts/uploader.swf',
'cancelImg': '/Images/cancel.png',
'buttonText': 'Upload Files',
'script': 'Home/Upload',
'folder': '/uploads',
'scriptData': { 'description': $('#description_' + uploadQueue).val() },
//'fileDesc': 'Image Files',
//'fileExt': '*.jpg;*.jpeg;*.gif;*.png',
'onSelect': function (event, queueID, fileObj) {
uploadQueue.push(queueID);
},
'multi': true,
'auto': false
});
$('#start').click(function () {
$.each(uploadQueue, function (k, v) {
alert($('#description_' + uploadQueue).val());
//$('#fileuploader').fileUploadSettings('scriptData','description=test');
$('#fileuploader').fileUploadStart(v);
});
});
});
</script>
<div id="fileuploader"></div>
<input type="button" id="start" value="start"/>
しかし、どういうわけかMVCコントローラーで、 nullまたは未定義として渡されている説明の値を取得していません???
public ActionResult Upload(HttpPostedFileBase fileData, string description)
{
var fileName = this.Server.MapPath("~/uploads/" + System.IO.Path.GetFileName(fileData.FileName));
fileData.SaveAs(fileName);
return View();
}
助けてください..どこが間違っているのかわからない!!