⑴ extjs中 想取一個 組件的 對象 用Ext.getCmp()方法 取不到
你這種寫法本來就不對的。既然用了extjs,為啥還要很多jsp頁面?用了extjs,那就拋棄老的jsp編寫規內則。
所有的功容能都寫在一個jsp頁面裡面,然後調用組件就不存在你的問題。
學習extjs,你可以去搜搜 蔡世友extjs教程,我以前就是看這個入門的。現在都用extjs做前端界面。
⑵ extjs combo下拉列表組件的監聽事件中設置聯動下拉列表disabled屬性為false 頁面沒反映
ext其內部源碼有這么一句話 this.el.dom.disabled = true;
disabled 的屬性 當submit提交時 不會提交後台
disabled 在IE8以上中有個版bug,一般人很少權遇到過:
<select id="select"><option>asdaasd</option></select>
document.getElementById("select").disabled = "disabled";
document.getElementById("select").disabled = true;
如果disabled 被設置了disabled之後,你再設置為true的時候是無效的,必須設置為disabled = 「」才會有效果
你可以試下citytemp.setDisabled("disabled");
實在不行就直接用dom元素去改,直接找到 document.getElementById("select").disabled = "disabled"就可以了
⑶ extjs4 中combobox如何設置默認值。
extjs的combox設置默認選中第一行確實是一件痛苦的事情。專。。
我自己是這樣做的
var store = Ext.create('Ext.data.Store', {
fields: ['鍵值']
proxy: {
type: 'ajax',
url: 'xxx.php',
reader: {type: 'json'}
}
});
ComboBox = Ext.create('Ext.form.ComboBox', {
store: store,
//參數
});
//監聽load事件屬
store.on('load', function(){
ComboBox.select(store.getAt(0));
});
監聽事件寫到Ext.onReady(function(){});中
⑷ ExtJS4 獲得store的數據
要獲取store里邊的數據的方法是在太多啦
varmyStore=Ext.create('MyExtJS.store.UserStore');
//idx是該記錄在store中的index,從0開始
var變數=myStore.getAt(idx).get('欄位名');
而且,在ext的組件中還有很多方法,他已經把store的record當作變數給你傳過來了,用起來相當方便,例如grid的監聽事件
lisenters:{
cellclick:function(g,t,i,r){
//這里的r就是表格被選中行的記錄
}
}
store還有很多 方法 可以取出其中的數據,具體內容,查閱extjs的官方api,搜索store即可!
純手敲,希望對lz有幫助~