ExtJs4 多附件上傳元件

2021-08-27 20:18:07 字數 943 閱讀 5272

主要有以下兩個問題:

1.後台無法接收到引數;

2.處理完成第乙個問題後可以上傳,但是上傳完成後關閉視窗後會報錯。

通過檢視源**得知第乙個問題是因為upload_start_handler方法中呼叫了setfilepostname方法,這樣導致後台的接收引數會動態變化(根據上傳檔案的名字)。所以這個方法最好去掉,我的這個方法如下:

var me = this.settings.custom_settings.scope_handler;

me.down('#cancelbtn').setdisabled(false);

然後在getswfconfig的return中增加如下配置:

file_post_name: 'file'

這樣我後台的接收名字就固定為file。具體可以參照uploadpanel中的後台**。

第二個問題比較偶然,onremove方法剛好和extjs預設銷毀呼叫的方法重名導致。解決方案就是修改該方法的名字,例如onremoveall.另外重寫beforedestroy方法,將store置空:

beforedestroy: function()

根據以上問題修改後的**見附件。需要把uploadpanel中的ext.define後的xx修改為自己的專案名稱。uploadpanel中的upload_url修改為實際的上傳action,uploadsuccess方法中從後台的返回值根據你的實際pojo類修改。

呼叫的話使用如下**:

var uploadwin = ext.create('xx.view.ux.uploadwin',

uploadwin.close();

},scope: this

}).show();

ExtJS4下拉樹元件

下拉樹類 jelly ext.define redm.commons.treecombox editable false,initcomponent function createpicker function viewconfig view picker.getview view.on rende...

ExtJs4 問題總結

在用到ext grid的時候,如果後台計算量大或者返回的資料量過大導致載入資料時間超時,時間超時後會發現grid沒有資料顯示。解決的方法是把超時的時間設定大點,ext的ajax預設請求都是30秒。設定方法如下 ext.ajax.timeout 90000 一秒 1000毫秒。上面設定是把timeou...

學習Extjs4心得

其實,學習extjs4的過程中,經常的檢視api。因為一開始接觸這個,所以一開始不會檢視api,但後來玩久了,也就能夠很熟練的玩了。其實,不管事什麼開發語言還是框架,學會檢視api是我們必須要做的事 在開發過程中,最糾結的就是除錯,我用的是firefox,裡面有個firebug,是除錯js的神器,可...