2011-02-25 62 views
6

我希望能夠將html格式轉換爲ExtJs格式。我讀過,你必須用applyTo做些事情,但不知道該怎麼做。ExtJS:將html格式轉換爲ExtJS

我希望有人能爲我提供一些幫助,

乾杯

+0

您是否希望這種轉換在飛行中發生? – NT3RP 2011-03-04 13:47:45

回答

5

如果你想每一個元素的形式轉換爲一個ExtJS元素,有人在Sencha forums發佈了一個解決方案(我將交叉張貼在這裏):

function convertForm(formId) { 
    var frm = new Ext.form.BasicForm(formId); 
    //frm.render(); 

    var fields = frm.getValues() 

    for (key in fields) { 

     var elem = Ext.get(key); 
     if (elem && elem.hasClass('combo-box')) { 
      var cb = new Ext.form.ComboBox({ 
       transform: elem.dom.name, 
       typeAhead: true, 
       triggerAction: 'all', 
       width: elem.getWidth(), 
       forceSelection: true 
      }); 
     } 
     else 
      if (elem && elem.hasClass('date-picker')) { 
       var df = new Ext.form.DateField({ 
        format: 'm/d/Y' 
       }); 
       df.applyTo(elem.dom.name); 
      } 

     if (elem && elem.hasClass('resizeable')) { 
      var dwrapped = new Ext.Resizable(elem, { 
       wrap: true, 
       pinned: true, 
       width: 400, 
       height: 150, 
       minWidth: 200, 
       minHeight: 50, 
       dynamic: true 
      }); 
     } 
    } 
} 
+0

感謝您爲我找到這個! – neolaser 2011-03-06 22:23:12

0

此外,誰是有興趣,按鍵可轉換得:

var objArray = Ext.DomQuery.select("input[type=button]");  
Ext.each(objArray, function(obj) {  
    var btn = new Ext.Button({  
     text : obj.value,  
     applyTo : obj,  
     handler : obj.onclick,  
     type : obj.type  
    });  
    btn.getEl().replace(Ext.get(obj));  
}); 

信息被發現here(不是英文,對不起)。