extjs模板循環的簡單介紹

本文目錄一覽:

如何銷毀extjs窗體?

配置closeAction: ‘close’ 屬性

API中這樣講:

closeAction : String

當關閉按鈕被點擊時執行的操作。 默認的操作是’close’,這將把窗口從DOM中移除…

當關閉按鈕被點擊時執行的操作。 默認的操作是’close’,這將把窗口從DOM中移除並摧毀它。 另一個合法的選項是’hide’,這將簡單地隱藏窗口,通過 設置它的visibility為hidden,並且設置一個負數偏移量。 通過 show 方法可以讓窗口重新顯示。

1、觸發 beforedestroy  

這是一個可取消的事件,如果需要,可能通過提供事件代理來阻止組件被銷毀。 

2、調用 beforeDestroy 方法 

又一個模板方法,在子類中可以重新實現和調用父類的方法。 

3、移除事件監聽者(代理)

如果組件已被呈現,則移除它底層的 HTML 元素的事件監聽列表,然後將元素從 DOM中移除。

4、onDestroy 被調用

這個還是一個模板方法,在子類可以重新實現。這裡需要注意的是,容器類提供了一個默認的 onDestroy 實現,它會循環銷毀它的成員組。

5、組件實例從 ComponentMgr 中反註冊

不可以再通過 Ext.getCmp 獲取到對象實例。

6、destroy 事件被觸發

這只是一個簡單的提醒,表示組件銷毀成功。

7、移除 Component 上的事件代理

組件可以獨立於元素,自己擁有事件代理,如果存在則移除它們。

extjs的card布局中使用XTemplate模板填充item的問題

本質原因是變數_pageFile是在render事件觸發後,才調用事件函數然後去獲取這個參數,而這個參數最後的結果是數據的最後一個值,修改代碼如下:

//..

listeners : {

                ‘render’ : function(panel){

                    console.log(this);

                    this.tpl.overwrite(this.body, this.initialConfig.pageFile);

                }

            },

            scope : this,

            pageFile : _pageFile

//..

完整的例子:

var curIndex = 1;

    var navHandler = function(){

         if(curIndex == 2) {

         curIndex  = 0

        }

   card.getLayout().setActiveItem(curIndex);

    curIndex ++;

    

};

    var card = new Ext.Panel({

    title: ‘嚮導的演示 Example Wizard’,

    layout:’card’,

    activeItem: 0,

    bodyStyle: ‘padding:15px’,

    defaults: {

       // 每個子組件都有效 applied to each contained panel

        border:false

    },

    // 簡單的導航按鈕,可以擴展更多 just an example of one possible navigation scheme, using buttons

    bbar: [

        {

            id: ‘move-prev’,

            text: ‘後退’,

            text: ‘Back’,

            handler: navHandler.createDelegate(this, [-1]),

            disabled: true

        },

        ‘-‘,

        {

            id: ‘move-next’,

            text: ‘前進 Next’,

            handler: navHandler.createDelegate(this, [1])

        }

    ],

    // 內面的面板,就是「卡片」 the panels (or “cards”) within the layout

    items: []

});

    var dataFile = [

            {

                pageFile : [

                    {

                        spec : 1,

                        pic : 11,

                        ranged : 111

                    }

                ]

            },

            {

                pageFile : [

                    {

                        spec : 2,

                        pic : 22,

                        ranged : 222

                    }

                ]

            }

    ];

    var _pageFile;

    for (var i = 0; i dataFile.length; i++) {

        _pageFile = dataFile[i];

        //_pageFile =

        card.add({

            id: ‘card-‘ + (i + 1),

            tpl : new Ext.XTemplate(

                ‘table border=”1″‘,

                ‘trtd規格/tdtd圖片/tdtd對白/td/tr’,

                ‘tpl for=”pageFile”‘,

                ‘trtd{spec}/tdtd{pic}-{ranged}/tdtd{dialogue}-{ranged}/td/tr’,

                ‘/tpl’,

                ‘/table’

            ),

            listeners : {

                ‘render’ : function(panel){

                    console.log(this);

                    this.tpl.overwrite(this.body, this.initialConfig.pageFile);

                }

            },

            scope : this,

            pageFile : _pageFile

        });

    }

    card.render(document.body)

Extjs如何動態載入Extjs腳本

1、首先,需要先創建一個基本可用的 ExtJS 模板, 這個很簡單, 如下所示:

!DOCTYPE html

html

head

title/title

link rel=”stylesheet” type=”text/css” href=”” /

script type=”text/javascript” src=””/script

/head

body

/body

/html

2、需要引用的腳本是 ExtJS 根目錄下的 ext-debug.js , 不是 ext-all-debug.js, 這個文件非常小, 只有幾百K , 當讓這個只是最基本的 ExtJS 組件, 不包括任何的界面功能。

3、配置 Ext.Loader 啟用動態載入;

4、ExtJS 中的動態載入是由 Ext.Loader 來完成的, 默認不啟用動態載入, 所以接下來需要做的事配置 Ext.Loader 啟用動態載入, 在上面模板的 body 標籤內添加如下代碼:

script type=”text/javascript”

Ext.onReady(function() {

Ext.Loader.setConfig({

enabled : true,

disableCaching: false,

paths : {

Ext : ‘/ext-4/src’

}

});

});

/script

注意:上面的代碼啟用了動態載入, 禁用了瀏覽器緩存, 以及指定了 ExtJS 的所部署的路徑。

extJS4.0 我在for循環里執行submit 為什麼循環完了以後才會執行? 不能循環一次執行一次.

這樣是不行的,submit提交是需要時間的返回,for循環不會等他的。不然如果提交的頁面一直沒返回結果,程序豈不是就卡住在這邊了。

extjs里的Ext.each可以中途退出嗎?

Ext.each(

function(value)

{

if(value == ‘2’){

return false

}

},this);

each方法是遍歷循環,你需要加一個自定義方法

這個方法每個元素都會執行一遍

你可以在方法中添加一個判斷語句,

當返回false的時候終止跳出遍歷循環

Extjs 2.0 如何動態的添加checkBox

兩種辦法:

1:

從後台查出的許可權,拼成字元串

,「,」分開,request.setArribute(『’)那個字元串

在前台拿到

用變數接受,將之轉化成數組

循環數組,每次循環的時候,創建一個checkBox,ok

了,其實應該用checkboxgroup

這樣只要創建boxlabel

就行了

以上做法

不好的地方是

只能在jsp中取得request中的屬性,不能再js中即時的拿到

2:創建一個checkbox

裡面的屬性就是你checkbox想要設置的屬性,然後從後台查出的許可權,每個許可權new出一個checkbox類,這樣就得到一個checkbox的list

將之轉化為json串

寫到前台,前台接受並且解析出一個數組,循環數組,如的到得數組

powers

for(var

i=0;ipowers.length;i++){

Ext.getCmp(‘form’).add(powers[i]);

}

就可以了

不知樓主懂沒懂。。。。

加上布啊局的話就自己想辦法了,將上面的例子簡單修改皆可以

當然也可以不創建類,直接把許可權拼成一個字元串,然後再前台接受並解析,轉化成數組

循環數組

for(var

i=0;ipowers.length;i++){

Ext.getCmp(‘form’).add(new

Ext.Checkbox({}));

}

Checkbox裡面的設置

就不用我所了吧

我這裡沒有代碼

忘記了Ext.Checkbox有沒有了

反正是這個意思,勿要吹毛求疵

,希望對你有幫助

原創文章,作者:UHSE,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/133050.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
UHSE的頭像UHSE
上一篇 2024-10-03 23:56
下一篇 2024-10-03 23:56

相關推薦

  • Python簡單數學計算

    本文將從多個方面介紹Python的簡單數學計算,包括基礎運算符、函數、庫以及實際應用場景。 一、基礎運算符 Python提供了基礎的算術運算符,包括加(+)、減(-)、乘(*)、除…

    編程 2025-04-29
  • Python滿天星代碼:讓編程變得更加簡單

    本文將從多個方面詳細闡述Python滿天星代碼,為大家介紹它的優點以及如何在編程中使用。無論是剛剛接觸編程還是資深程序員,都能從中獲得一定的收穫。 一、簡介 Python滿天星代碼…

    編程 2025-04-29
  • 心形照片拼圖模板

    如何使用心形照片拼圖模板 一、模板介紹 心形照片拼圖模板是一種讓用戶可以將自己的照片拼接成一個心形的巧妙設計,每個照片都是一個拼圖塊,當所有的照片配合完成時,呈現出一個完整的心形。…

    編程 2025-04-29
  • Python海龜代碼簡單畫圖

    本文將介紹如何使用Python的海龜庫進行簡單畫圖,並提供相關示例代碼。 一、基礎用法 使用Python的海龜庫,我們可以控制一個小海龜在窗口中移動,並利用它的「畫筆」在窗口中繪製…

    編程 2025-04-29
  • Python櫻花樹代碼簡單

    本文將對Python櫻花樹代碼進行詳細的闡述和講解,幫助讀者更好地理解該代碼的實現方法。 一、簡介 櫻花樹是一種圖形效果,它的實現方法比較簡單。Python中可以通過turtle這…

    編程 2025-04-28
  • Python大神作品:讓編程變得更加簡單

    Python作為一種高級的解釋性編程語言,一直被廣泛地運用於各個領域,從Web開發、遊戲開發到人工智慧,Python都扮演著重要的角色。Python的代碼簡潔明了,易於閱讀和維護,…

    編程 2025-04-28
  • 基尼係數Excel計算模板

    這篇文章將介紹基尼係數Excel計算模板,為大家詳細闡述如何使用Excel進行基尼係數的計算。 一、模板下載及導入 首先需要下載基尼係數的Excel計算模板,可以在Excel中通過…

    編程 2025-04-28
  • 用Python實現簡單爬蟲程序

    在當今時代,互聯網上的信息量是爆炸式增長的,其中很多信息可以被利用。對於數據分析、數據挖掘或者其他一些需要大量數據的任務,我們可以使用爬蟲技術從各個網站獲取需要的信息。而Pytho…

    編程 2025-04-28
  • 如何製作一個簡單的換裝遊戲

    本文將從以下幾個方面,為大家介紹如何製作一個簡單的換裝遊戲: 1. 遊戲需求和界面設計 2. 使用HTML、CSS和JavaScript開發遊戲 3. 實現遊戲的基本功能:拖拽交互…

    編程 2025-04-27
  • Guava Limiter——限流器的簡單易用

    本文將從多個維度對Guava Limiter進行詳細闡述,介紹其定義、使用方法、工作原理和案例應用等方面,並給出完整的代碼示例,希望能夠幫助讀者更好地了解和使用該庫。 一、定義 G…

    編程 2025-04-27

發表回復

登錄後才能評論