jQuery File Upload 出現 has no method 'widget' 錯誤

今天在弄 Express + jQuery File Upload for Node.js 弄了整晚

弄了一整晚,由於對於 Node.js 尚不熟悉,無法直接使用 jQuery File Upload 所提供的 server 版本

Google 了很久,終於找到 jquery-file-upload-middleware 然後終於可以開始上傳了

接下來開始弄前端的上傳,載入 jquery.fileupload.js 後執行

1
$("#fileupload").fileupload({ dataType: 'json' });

也就是最基本的 fileUpload 但是卻出現

1
2
Uncaught TypeError: Object function (e,n) {return new x.fn.init(e,n,t)} has no method 'widget'
Uncaught TypeError: Object [object Object] has no method 'fileupload' error message

上述這兩行錯誤,百思不得其解,畢竟我已經用了這麼多次了,都沒遇過這問題 :(

Google 了很久,一開始找到的答案是 Script 要在前面執行,並且要在 DOM 載入過後

不過很明顯的我並沒有犯下這種錯誤…

接下來找了很久,終於發現!!原來是 jQuery UI 沒有載入!!!

很快地在載入 jquery.fileupload.js 之前先載入 jquery.ui.js

然後就很順利的解決這個問題了。

希望有遇到相同問題的人都可以順利解決此問題。