解決 原來,JS的順序加載在application.js中是錯誤的:使用jQuery文件上傳與CoffeeScript的 - 調整圖像使用add回調,
original:
//= require jquery-fileupload/jquery.fileupload-process
//= require jquery-fileupload/jquery.fileupload-image
//= require jquery-fileupload/jquery.fileupload-validate
correct version:
//= require jquery-fileupload/jquery.fileupload-process
//= require jquery-fileupload/jquery.fileupload-validate
//= require jquery-fileupload/jquery.fileupload-image
我試圖使用BlueImp的jquery fileuploader和我已經設法讓所有的工作,但調整大小。
我試圖調整添加回調的圖像,然後提交以避免任何服務器端處理。
我知道使用add回調會導致進程函數被跳過,但我在add回調本身手動調用它,它應該工作,但它不會。
這裏是我的代碼:
$('.jquery-fileupload').fileupload
dataType: "script"
imageMaxWidth: 480
imageMaxHeight: 360
disableImageResize: false
autoUpload: false
process:[
{
action: 'load',
fileTypes: /^image\/(gif|jpeg|png)$/,
maxFileSize: 20000000
},
{
action: 'resize',
maxWidth: 480, // the images are to be loaded into a pdf later so they have to be skept small
maxHeight: 360,
minWidth: 480,
minHeight: 360
},
{
action: 'save'
}
]
progress: (e, data) ->
progress = parseInt(data.loaded/data.total * 100, 10);
$('#progress_'+data.formData.token+' .bar').css('width', progress+'%')
add: (e, data) ->
unique_token = token();
if (data.files && data.files[0])
if(data.files[0].size < 200000000)
if(data.files[0].type.substr(0, data.files[0].type.indexOf('/')) != 'image')
alert("Please upload a file with the correct format")
else
current_data = $(this)
data.process(->
return current_data.fileupload('process', data); //call the process function
).done(->
data.formData = {token: unique_token};
data.context = $('.preview:last');
data.context.find('.abort').click(abortUpload);
xhr = data.submit();
data.context.data('data',{jqXHR: xhr});
)
else
alert("one of your files is over 200MB")
done: (e, data) ->
console.log(data);
在這個任何幫助,將不勝感激,因爲我一直在敲打我的腦袋在桌子上2天直在此!
編輯 忘了提,這是我的js文件:
//= require jquery-fileupload/vendor/jquery.ui.widget
//= require jquery-fileupload/vendor/load-image
//= require jquery-fileupload/vendor/canvas-to-blob
//= require jquery-fileupload/jquery.iframe-transport
//= require jquery-fileupload/jquery.fileupload
//= require jquery-fileupload/jquery.fileupload-ui
//= require jquery-fileupload/jquery.fileupload-process
//= require jquery-fileupload/jquery.fileupload-image
//= require jquery-fileupload/jquery.fileupload-validate
//= require jquery-fileupload/vendor/tmpl
//= require jquery-fileupload/locale
不,不是,它不是真正的縮進。如果是這樣,我會在軌道中出現錯誤。 – dannio
如果你解決了這個問題,你應該發佈一個答案並標記出來。不知道是否正確的順序是您在開始時或在編輯部分末尾放置的內容。 – raul782
這真的很有幫助,我得到了處理工作感謝這篇文章。現在我發現多個上傳不起作用。你有沒有想過如何完成這項工作? – Brandon