だから、私は MVC 4 アプリケーション内で FineUploader 3.3 を使用しています。今、私はそれを正しく機能させる必要があります。
私は MVC を初めて使用し、JSON を返すのはまったく初めてなので、これを機能させるには助けが必要です。これが私が使用しているもので、すべてdoc.ready
.
var manualuploader = $('#files-upload').fineUploader({
request:
{
endpoint: '@Url.Action("UploadFile", "Survey")',
customHeaders: { Accept: 'application/json' },
params: {
//variables are populated outside of this code snippet
surveyInstanceId: (function () { return instance; }),
surveyItemResultId: (function () { return surveyItemResultId; }),
itemId: (function () { return itemId; }),
imageLoopCounter: (function () { return counter++; })
},
validation: {
allowedExtensions: ['jpeg', 'jpg', 'gif', 'png', 'bmp']
},
multiple: true,
text: {
uploadButton: '<i class="icon-plus icon-white"></i>Drop or Select Files'
},
callbacks: {
onComplete: function(id, fileName, responseJSON) {
alert("Success: " + responseJSON.success);
if (responseJSON.success) {
$('#files-upload').append('<img src="img/success.jpg" alt="' + fileName + '">');
}
}
}
}
編集: Internet Explorer 9 を使用していましたが、Chrome、Firefox に切り替えたところ、問題なくアップロードできました。IE9 には何が必要ですか? ブラウザに関係なく、検証は機能しません。
エンドポイントが起動し、ファイル/パラメーターが読み込まれるので、これで問題ありません! 検証は、ユーザーがこのリスト以外の何かを選択するのを止めませんが、当面はこれで作業できます。正常に保存して、アップロードで必要なことを実行できます。ただし、起動する必要はありませんOnComplete
。実際、IE では、現在持っているもので OPEN/SAVE ダイアログが表示されます。
質問: onComplete
( id
、filename
、responseJSON
) 内の関数パラメーターは、戻り時または途中で入力されますか? 私はこれについて混乱しています。JSON にこれらのパラメーターを含めて入力する必要がありますか?
私はこれを行いません (これらのパラメーターを入力します)。C# の出力メソッドはJsonResult
次のように返され、「成功」を返すだけです (適切な場合)。
return Json(new { success = true });
さらに追加する必要がありますか? この行は保存が行われた後であり、私がやりたいのは、すべてが良いかどうかをユーザーに伝えることだけです。JSONのsuccess
プロパティは と一致しresponseJSON.success
ますか?
何が欠けているか、間違っていますか?