使用Ext Form封装项目中已有的Html元素成为Ext的组件

  1. Ext.onReady(function() {  
  2.     Ext.BLANK_IMAGE_URL = '../../resources/images/default/s.gif';  
  3.     Ext.QuickTips.init();  
  4.     /** 
  5.      * button 
  6.      */  
  7.     var objArray = Ext.DomQuery.select("input[type=submit]");  
  8.     Ext.each(objArray, function(obj) {  
  9.         var btn = new Ext.Button({  
  10.             text : obj.value,  
  11.             applyTo : obj,  
  12.             handler : obj.onclick,  
  13.             type : obj.type  
  14.         });  
  15.         btn.getEl().replace(Ext.get(obj));  
  16.     });  
  17.     var objArray = Ext.DomQuery.select("input[type=reset]");  
  18.     Ext.each(objArray, function(obj) {  
  19.         var btn = new Ext.Button({  
  20.             text : obj.value,  
  21.             applyTo : obj,  
  22.             handler : obj.onclick,  
  23.             type : obj.type  
  24.         });  
  25.         btn.getEl().replace(Ext.get(obj));  
  26.     });  
  27.     var objArray = Ext.DomQuery.select("input[type=button]");  
  28.     Ext.each(objArray, function(obj) {  
  29.         var btn = new Ext.Button({  
  30.             text : obj.value,  
  31.             applyTo : obj,  
  32.             handler : obj.onclick,  
  33.             type : obj.type  
  34.         });  
  35.         btn.getEl().replace(Ext.get(obj));  
  36.     });  
  37.     /** 
  38.      * text and textarea and password and file 
  39.      */  
  40.     var objArray = Ext.DomQuery.select("input[type=text]");  
  41.     Ext.each(objArray, function(obj) {  
  42.         var txtField = new Ext.form.TextField({  
  43.             applyTo : obj,  
  44.             validationEvent : 'blur',  
  45.             validator : function() {  
  46.                 Ext.Ajax.request({  
  47.                     url : '1.htm',  
  48.                     success : function(response) {  
  49.                         txtField.clearInvalid();  
  50.                         txtField.markInvalid(response.responseText);  
  51.                     },  
  52.                     failure : function() {  
  53.                         alert(1);  
  54.                     }  
  55.                 });  
  56.             }  
  57.         });  
  58.     });  
  59.     var objArray = Ext.DomQuery.select("input[type=password]");  
  60.     Ext.each(objArray, function(obj) {  
  61.         var txtField = new Ext.form.TextField({  
  62.             applyTo : obj,  
  63.             inputType : 'password'  
  64.         });  
  65.     });  
  66.     var objArray = Ext.DomQuery.select("input[type=file]");  
  67.     Ext.each(objArray, function(obj) {  
  68.   
  69.     });  
  70.     var objArray = Ext.DomQuery.select("textarea");  
  71.     Ext.each(objArray, function(obj) {  
  72.         var txtArea = new Ext.form.TextArea({  
  73.             applyTo : obj  
  74.         });  
  75.     });  
  76.     /** 
  77.      * checkbox and radio 
  78.      */  
  79.     var objArray = Ext.DomQuery.select("input[type=checkbox]");  
  80.     Ext.each(objArray, function(obj) {  
  81.         var checkbox = new Ext.form.Checkbox({  
  82.             applyTo : obj  
  83.         });  
  84.     });  
  85.     var objArray = Ext.DomQuery.select("input[type=radio]");  
  86.     Ext.each(objArray, function(obj) {  
  87.         var radio = new Ext.form.Radio({  
  88.             applyTo : obj  
  89.         });  
  90.     });  
  91.     /** 
  92.      * select or comboBox 
  93.      */  
  94.     var objArray = Ext.DomQuery.select("select");  
  95.     Ext.each(objArray, function(obj) {  
  96.         var btn = new Ext.form.ComboBox({  
  97.             typeAhead : true,  
  98.             triggerAction : 'all',  
  99.             transform : obj,  
  100.             forceSelection : true  
  101.         });  
  102.     });  
  103.   
  104. })  


测试页面  
Java代码  
  1. <html>  
  2.     <head>  
  3.         <meta http-equiv="Content-Type" content="text/html; charset=gb2312">  
  4.         <title>test</title>  
  5.         <link rel="stylesheet" type="text/css"  
  6.             href="resources/css/ext-all.css" />  
  7.         <script type="text/javascript" src="adapter/ext/ext-base.js"></script>  
  8.         <script type="text/javascript" src="ext-all-debug.js"></script>  
  9.         <script type="text/javascript" src="example-form.js"></script>  
  10.     </head>  
  11.     <body>  
  12.         <form>  
  13.             <input type="submit" value="asdqweqwe" οnclick="alert(2)">  
  14.             <input type="text">  
  15.             <input type="password">  
  16.             <input type="file">  
  17.             <textarea></textarea>  
  18.             <input type="checkbox">  
  19.             <input type="radio" name="q">qweqwe</input>  
  20.             <input type="radio" name="q">qweqwe</input>  
  21.             <select name="s">  
  22.                 <option value="kkkkk">  
  23.                     pp  
  24.                 </option>  
  25.                 <option value="gg">  
  26.                     ww  
  27.                 </option>  
  28.             </select>  
  29.         </form>  
  30.     </body>  
  31. </html>  

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值