szhswl
          宋針還的個(gè)人空間
          翻譯:Frank

          本教程將以XML為數(shù)據(jù)源,帶你進(jìn)入Grid的世界。

          本文涉及的范例代碼,可以在這里下載。一個(gè)完成好的例子可在這里找到。

          步驟一 定義數(shù)據(jù)(Data Definition)

          首先要讓Grid知道XML文檔定義了每一行是什么數(shù)據(jù)。正如所見,我們命名了"item"在下面的XML樣本中。

          單行的XML樣本數(shù)據(jù)

          <Item>
          <ASIN>0446613657</ASIN>
          <DetailPageURL>http://www.amazon[*SNIP*]JVQEG2</DetailPageURL>
          <ItemAttributes>
          <Author>Sidney Sheldon</Author>
          <Manufacturer>Warner Books</Manufacturer>
          <ProductGroup>Book</ProductGroup>
          <Title>Are You Afraid of the Dark?</Title>
          </ItemAttributes>
          </Item>
          

          接著需要定義某一列為“統(tǒng)一標(biāo)識(shí)(Unique Identifier)”,即ID,根據(jù)“id"所設(shè)置的那個(gè)節(jié)點(diǎn)來讀取值(樣本代碼第九行)。本例中的樣本數(shù)據(jù)是”ASIN"列。

          數(shù)據(jù)定義的最后部分就是指定你需要顯示的字段(Fields),把這些字段放到一個(gè)數(shù)組之中,并保證這些字段與你的XML數(shù)據(jù)中元素名稱是一致的,而且還要注意先后順序,這里的順序不需要和XML文件中順序一致。

              var dataStore = new Ext.data.Store({
          proxy: new Ext.data.HttpProxy({url: 'sampledata-sheldon.xml'}),
          reader: new Ext.data.XmlReader({
          record: 'Item',
          id: 'ASIN'
          }, [
          'Author', 'Title', 'Manufacturer', 'ProductGroup'
          ])
          });
          

           

           

          步驟二 列模型(Column Model)

          下一步便是定義Column Model 列模型。簡(jiǎn)單地說,就是通過一些屬性的設(shè)置,決定每一列怎么控制或怎么顯示,這是一個(gè)由每列的配置參數(shù)組成的數(shù)組。注意,出現(xiàn)的順序應(yīng)該與剛才定義“字段”的數(shù)組一致。較常見的參數(shù)通常是header和width,所以你會(huì)覺得這兩項(xiàng)是必須要設(shè)置的,然而寬度(width)其實(shí)不總是需要的,因?yàn)樯院笪覀儗⑹褂胊utoWidth/Height來代替。

          列模型樣本

          	var colModel = new Ext.grid.ColumnModel([
          {header: "Author", width: 120, dataIndex: 'Author'},
          {header: "Title", width: 180, dataIndex: 'Title'},
          {header: "Manufacturer", width: 115, dataIndex: 'Manufacturer'},
          {header: "Product Group", width: 100, dataIndex: 'ProductGroup'}
          ]);
          

          最后是將DataStore和Column Model兩樣?xùn)|西傳入到Grid,渲染結(jié)果,然后加載來自DataStore的數(shù)據(jù),這些就是你讓Grid工作起來的所有因素!

          進(jìn)行渲染!

              var grid = new Ext.grid.Grid('mygrid', {
          ds: dataStore,
          cm: colModel
          });
          grid.render();
          dataStore.load();
          
          本文轉(zhuǎn)自:http://www.ajaxjs.com/yuicn/article.asp?id=20075866


          ---------------------------------------------------------------------------------------------------------------------------------
          說人之短,乃護(hù)己之短。夸己之長,乃忌人之長。皆由存心不厚,識(shí)量太狹耳。能去此弊,可以進(jìn)德,可以遠(yuǎn)怨。
          http://www.aygfsteel.com/szhswl
          ------------------------------------------------------------------------------------------------------ ----------------- ---------
          posted on 2007-12-08 19:05 宋針還 閱讀(424) 評(píng)論(0)  編輯  收藏 所屬分類: EXT
          主站蜘蛛池模板: 濮阳市| 孝义市| 囊谦县| 恩平市| 平原县| 大同市| 澄迈县| 酉阳| 昭觉县| 仙桃市| 罗田县| 车险| 华亭县| 潼南县| 五河县| 卢湾区| 张北县| 岐山县| 海林市| 彩票| 巩义市| 扶风县| 陵川县| 华蓥市| 元江| 安新县| 定襄县| 慈溪市| 全州县| 黔东| 澜沧| 托里县| 乌什县| 宝坻区| 大同县| 耿马| 湘乡市| 潢川县| 绥中县| 达州市| 成武县|