<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    沉睡森林@漂在北京

    本處文章除注明“轉載”外均為原創,轉載請注明出處。

      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
      152 隨筆 :: 4 文章 :: 114 評論 :: 0 Trackbacks

    經過兩天的測試,發現了不少tags的問題,但是還好,都被解決了。下面貼一點成果出來,很簡陋,但是還是可以解決簡單的問題的。下面的是在jsp里面寫的tags代碼,相當的簡單。

    <%@ page contentType="text/html;charset=UTF-8" %>

    <%@ taglib uri="/WEB-INF/greatwall.tld" prefix="w" %>

     

    <w:html>

    <w:head>

    <w:title>Example of Form Demo</w:title>

    </w:head>

    <w:body>

    <w:form name="testForm" title="testForm" url="txn990051.do" method="post" >

           <w:text  name="username" fieldLabel="username"  allowBlank="false"     />

           <w:text  name="email" fieldLabel="email"     />

           <w:text  name="qq" fieldLabel="qq"    />

           <w:text  name="msn" fieldLabel="msn"   />

           <w:submit />

           <w:reset />

    </w:form>

    </w:body>

    </w:html>

     

    下面是經過解析后生成的html頁面

     

    <html>

    <head>

    <link rel="stylesheet" type="text/css" />

    <script type="text/javascript" src="http://127.0.0.1:8080/greatwall/script/ext/ext-base.js"></script>

    <script type="text/javascript" src="http://127.0.0.1:8080/greatwall/script/ext/ext-all.js"></script>

    <script type="text/javascript" src="http://127.0.0.1:8080/greatwall/script/ext/ext-lang-zh_CN.js"></script>

    <script type="text/javascript" src="http://127.0.0.1:8080/greatwall/script/greatwall-form.js"></script>

    <title>Example of Form Demo</title>

    </head>

    <script>

    </script>

    <body>

    <script>

    Ext.BLANK_IMAGE_URL = 'http://127.0.0.1:8080/greatwall/script/ext/resources/images/default/s.gif';

    var _bodyWidth = Ext.getBody().getWidth()-12;

    Ext.onReady(function(){

           Ext.QuickTips.init();

           Ext.form.Field.prototype.msgTarget = 'qtip';

           var testForm = new Ext.FormPanel({name:'testForm',id:'testForm',layout:'table',style:'height:100%',width:_bodyWidth+12,layoutConfig: {columns:4},defaults:{border:false,layout:'form',frame:false,labelAlign:'right',labelWidth:75,width:_bodyWidth/2,height:30}, method:'post',url:'txn990051.do',title:'testForm',frame:true});

           testForm.addButton({text:'確定',handler:function(){submitForm('testForm')}});

           testForm.addButton({text:'重置',handler:function(){resetForm('testForm')}});

           testForm.add({colspan:2,width:_bodyWidth/2.0,items:{xtype:'textfield',fieldLabel:'username',allowBlank:false,name:'username',anchor:"100%"}});

           testForm.add({colspan:2,width:_bodyWidth/2.0,items:{xtype:'textfield',fieldLabel:'email',name:'email',anchor:"100%"}});

           testForm.add({colspan:2,width:_bodyWidth/2.0,items:{xtype:'textfield',fieldLabel:'qq',name:'qq',anchor:"100%"}});

           testForm.add({colspan:2,width:_bodyWidth/2.0,items:{xtype:'textfield',fieldLabel:'msn',name:'msn',anchor:"100%"}});

           testForm.render(Ext.getBody());

    });

    </script>

    </body>

    </html>

     

    代碼引用了一個greatwall-form.js文件,具體的內容如下:

    /**

     * 提交制定的表單

     * @param {String} formName 需要提交的表單名稱

     */

    function submitForm(formName) {

           if (!formName) {

                  Ext.Msg.alert('錯誤', '傳入的表單名稱錯誤!');

                  return;

           }

           var formPanel = Ext.getCmp(formName);

           if (formPanel.form.isValid()) {

                  formPanel.form.doAction("submit", {

                         method : formPanel.form.method,

                         url : formPanel.form.url,

                         params : formPanel,

                         success : function() {

                         },

                         failure : function() {

                         }

                  });

           }

    }

     

    /**

     * 重置表單數據

     * @param {String} formName 需要重置的表單名稱

     */

    function resetForm(formName){

           if (!formName) {

                  Ext.Msg.alert('錯誤', '傳入的表單名稱錯誤!');

                  return;

           }

           var formPanel = Ext.getCmp(formName);     

           if(formPanel.form){

                  formPanel.form.reset();

           }else{

                  Ext.Msg.alert('錯誤', '傳入的表單名稱不存在!');

           }

    }

     

    /**

     * 利用表單域名稱獲取表單域的值,名稱錯誤或者不存在該表單域時返回null

     * @param {String} fieldName 表單域名稱

     * @return {String} 返回表單域的值

     */

    function getFormFieldValue(fieldName) {

           if (!fieldName) {

                  Ext.Msg.alert('錯誤', '傳入的表單域名稱錯誤!');

                  return null;

           }

           if (Ext.getCmp(fieldName) == null) {

                  Ext.Msg.alert('錯誤', '傳入的表單域不存在!');

                  return null;

           }

           return Ext.getCmp(fieldName).getValue();

    }

     

    頁面最終打開的效果就不多說了,利用第二段代碼就可以看到效果了。還是比較高興的,對ext的運用提高了不少。下一步需要開始制作grid還有layout了。個人感覺ext不難,制作標簽也不難,但是需要開發一套經過測試完整的標簽卻是很巨大的工程,需要長時間的投入和大量的工作。其實說白了就是需要一個堅持的動力吧。

    posted on 2008-11-14 16:11 王總兵 閱讀(843) 評論(1)  編輯  收藏 所屬分類: Ext

    評論

    # re: Ext標簽開發整理 2009-06-26 17:38 kanful
    我們公司已經完了了對ext的封裝,不只是grid layout,還有很多,幾乎能用的。有興趣,聯系49415958.  回復  更多評論
      

    主站蜘蛛池模板: 久久夜色精品国产噜噜亚洲AV| 精品亚洲福利一区二区| 亚洲熟女综合一区二区三区| 免费亚洲视频在线观看| 大地资源免费更新在线播放| 亚洲高清有码中文字| 24小时免费直播在线观看| 亚洲人成77777在线观看网| 91香蕉视频免费| 亚洲高清毛片一区二区| 182tv免费观看在线视频| 亚洲性在线看高清h片| 亚洲国产成人超福利久久精品| 亚洲黄色免费电影| 亚洲码一区二区三区| 好湿好大好紧好爽免费视频| 免费国产黄线在线观看| 一本色道久久88—综合亚洲精品| 成人一a毛片免费视频| 美女黄色免费网站| 久久乐国产精品亚洲综合| 亚洲AV无码精品国产成人| h在线观看视频免费网站| 亚洲AV人无码激艳猛片| 1000部啪啪毛片免费看| 亚洲人成人网站18禁| 曰批全过程免费视频在线观看 | 久久亚洲精品无码aⅴ大香| 国产92成人精品视频免费| 国产成人亚洲综合网站不卡| 国产美女精品久久久久久久免费| 日韩在线视频播放免费视频完整版| 国产精品亚洲视频| 免费成人福利视频| 日韩精品视频在线观看免费 | 日韩高清在线免费观看| ASS亚洲熟妇毛茸茸PICS| 午夜国产大片免费观看| 日本亚洲欧洲免费天堂午夜看片女人员| 亚洲欧洲视频在线观看| 免费一级毛片在线播放|