因此,我在MVC 4应用程序中使用FineUploader 3.3,这是一个非常酷的插件,非常值得名义成本。感谢您构建这个,非常有用。现在,我只需要让它正常工作。FineUploader OnComplete方法未触发。新手,需要一些手柄
我很新的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中,我得到了我目前所拥有的“打开/保存”对话框。
问题:onComplete(id,filename,responseJSON)中的函数参数是通过返回还是出路填充的?我只是对此感到困惑。我的JSON是否必须包含这些参数,并填充?
我不这样做(填充这些参数),并在C#我的输出方法返回JsonResult这样看,刚刚回国的“成功”(如果适用):
return Json(new { success = true });
我是否需要添加更多?这条线是在保存发生之后,我想要做的就是告诉用户一切都很好。我的Json中的'success'属性是否与responseJSON.success匹配?
我错过了什么,或者错了?我相信这也会帮助其他人,所以我希望你会花时间和协助。我很感激!谢谢。
真棒!我得到它的工作,非常感谢。我不得不说,我对什么元素(和其他部分......)感到困惑。你的服务和速度帮助你是惊人的。再次感谢。 – RichieMN 2013-03-12 19:17:06