ExtJS 예제 요약 - 4

22326 단어 ExtJs

1. 연동 메뉴

  
  
  
  
  1. var provinces = [ [ 1, ' ' ], [ 2, ' ' ] ]; 
  2. var cities = new Array(); 
  3. cities[1] = [ [ 11, ' ' ], [ 22, ' ' ] ]; 
  4. cities[2] = [ [ 33, ' ' ], [ 44, ' ' ], [ 55, ' ' ] ]; 
  5.  
  6. var comboProvinces = new Ext.form.ComboBox({ 
  7.  
  8.     store : new Ext.data.SimpleStore({ 
  9.         fields : [ "provinceId""provinceName" ], 
  10.         data : provinces 
  11.     }), 
  12.  
  13.     listeners : { 
  14.         select : function(combo, record, index) { 
  15.             comboCities.clearValue(); 
  16.             comboCities.store.loadData(cities[record.data.provinceId]); 
  17.         } 
  18.     }, 
  19.  
  20.     valueField : "provinceId"
  21.     displayField : "provinceName"
  22.     mode : 'local'
  23.     forceSelection : true
  24.     blankText : ' '
  25.     emptyText : ' '
  26.     hiddenName : 'provinceId'
  27.     editable : false
  28.     triggerAction : 'all'
  29.     allowBlank : true
  30.     fieldLabel : ' '
  31.     name : 'provinceId'
  32.     width : 80 
  33.  
  34. }); 
  35.  
  36. var comboCities = new Ext.form.ComboBox({ 
  37.     store : new Ext.data.SimpleStore({ 
  38.         fields : [ "cityId"'cityName' ], 
  39.         data : [] 
  40.     }), 
  41.  
  42.     valueField : "cityId"
  43.     displayField : "cityName"
  44.     mode : 'local'
  45.     forceSelection : true
  46.     blankText : ' '
  47.     emptyText : ' '
  48.     hiddenName : 'cityId'
  49.     editable : false
  50.     triggerAction : 'all'
  51.     allowBlank : true
  52.     fieldLabel : ' '
  53.     name : 'cityId'
  54.     width : 80 
  55. }); 
  56.  
  57. new Ext.Window({ 
  58.     width : 300, 
  59.     height : 200, 
  60.     layout : 'column'
  61.     items : [ comboProvinces, comboCities ] 
  62. }).show(); 

2. 윈도우 최소화: minimize 다시 쓰기 방법

  
  
  
  
  1. var window = new Ext.Window({ 
  2.         width : 400, 
  3.         height : 300, 
  4.         title : 'my window'
  5.         minimizable :true
  6.         minimize : function() { 
  7.             window.hide(); 
  8.         }, 
  9.         maximizable : true 
  10.     }); 
  11.     window.show(); 

3. 유연한javascript

  
  
  
  
  1. function Animal(name) { 
  2.     this.name = name; 
  3.     this.age = 0; 
  4. }; 
  5.  
  6. alert(Animal); // 。
  7. alert(Animal());// 。undefined,
  8. alert(new Animal());//object 
  9. alert(new Animal);//object 

4.javascript의 가변 매개 변수: 정의할 때 입력 매개 변수 개수를 지정할 필요가 없습니다

  
  
  
  
  1. function sum() { 
  2.     var s = 0; 
  3.     for(var i = 0; i < arguments.length ; i++){ 
  4.         s += arguments[i]; 
  5.     } 
  6.     return s; 
  7. }; 
  8.  
  9. alert(sum(1,2)); 
  10. alert(sum(1,2,3,4,5,6)); 

5,combo는 기본적으로 하나를 선택하고 프론트 데스크톱 디스플레이와 백그라운드 값이 맵핑 관계가 있음

  
  
  
  
  1. render : function(combo) {   
  2.                         combo.setValue("0");   //    
  3.                     }   

 

  
  
  
  
  1. data : [ ['all', '0'],['ip', '1'], ['cookie', '2']] 

기본 프론트 데스크에서 all 선택
6. combo는 원격으로 데이터를 기록한다

  
  
  
  
  1. var mystore = new Ext.data.ArrayStore({  
  2.     fields : [ 'myId''displayText' ],  
  3.     //data : [ [ 1, 'ALL' ], [ 2, 'IP' ], [ 3, 'COOKIE' ] ] 
  4.     proxy: new Ext.data.HttpProxy({url: '../../blackList/searchCookieTypes.do'}),    
  5. });  
  6. var top = new Ext.FormPanel({  
  7.     width : 600,  
  8.     height : 400,  
  9.     title : 'hello',  
  10.     labelWidth: 50,  
  11.     labelAlign:'right',  
  12.     bodyStyle : 'padding:5px 5px 10 10',  
  13.     frame : true,  
  14.     defaults : {  
  15.         xtype : 'combo',  
  16.         width : 120,  
  17.         height : 20,  
  18.         typeAhead: true,  
  19.         triggerAction: 'all',  
  20.         lazyRender:true,  
  21.         mode: 'remote',  
  22.         valueField: 'myId',  
  23.         displayField: 'displayText'  
  24.     },  
  25.     items : [ {  
  26.         fieldLabel : 'lable1',  
  27.         store : mystore  
  28.     }  
  29.     , {  
  30.         fieldLabel : 'lable2',  
  31.         store : mystore  
  32.     }],  
  33.     buttons : [ {  
  34.         text : 'save'  
  35.     }, {  
  36.         text : 'cancel'  
  37.     } ]  
  38. });  
  39.  
  40. top.render(document.body);  

7. gridpanle의 전시와 데이터 전달을 분리한다
반환: ColumnModel의 renderer 메서드를 리셋합니다.

  
  
  
  
  1. header : " "
  2. dataIndex : 'punishMode'
  3. // :0、 :1、 ( ):2 
  4. renderer : function(punishNumber) { 
  5.     if(punishNumber == 0){ 
  6.         return " "
  7.     } 
  8.     if(punishNumber == 1){ 
  9.         return " "
  10.     } 
  11.     if(punishNumber == 2){ 
  12.         return " "
  13.     } 
  14.     return ""

다음 데이터: 자바 코드만 처리할 수 있고 비추지 못합니다
8. switch 문장

  
  
  
  
  1. var submitObject = form.getValues(); 
  2.                         submitObject.appId = appId; 
  3.                         switch(submitObject.punishMode){ 
  4.                             case 'waterMark':submitObject.punishMode='0';break
  5.                             case 'disconnect':submitObject.punishMode='1';break
  6.                             case 'errorCode':submitObject.punishMode='2';break
  7.                             default:submitObject.punishMode=""
  8.                         } 

9. html의 왼쪽 디스플레이와 오른쪽 디스플레이
 
왼쪽 오른쪽
왼쪽으로
표시
오른쪽으로
보이기
10. js의 속행
js의 줄 문자는 "\"문서입니다.write ("dsdddd\dffdsg\gdfsgfd\gfd\gfddddf", 합법적인 코드
11. 맨 위 사용자 이름 표시: header_panel.body.update(topMenu);

  
  
  
  
  1. var header_panel = new Ext.Panel( 
  2.                     { 
  3.                         // frame : false, 
  4.                         // border : false, 
  5.                         autoScroll : false
  6.                         height : 60, 
  7.                         region : 'north'
  8.                         bodyStyle : 'background-color:#D5E2F2'
  9.                         listeners : { 
  10.                             afterrender : function(thiz) { 
  11.                                 Ext.Ajax.request({ 
  12.                                             url : '../../user/getUserName.do'
  13.                                             success : function(response, opts) { 
  14.                                                 var responseText = Ext.decode(response.responseText); 
  15.                                                 if (responseText.success) { 
  16.                                                     username = responseText.data[0]; 
  17.                                                 } else { 
  18.                                                     username = "customer"
  19.                                                 } 
  20.                                                 var topMenu = '<p><img alt="" src="logo.png"><a href="main.html"> </a>&nbsp;\ 
  21.                                                      :'+ username + ' &nbsp;&nbsp;<a href="../others/others.html"> </a></p>'; 
  22.                                                 header_panel.body.update(topMenu); 
  23.                                             } 
  24.                                         }); 
  25.                             } 
  26.                         }/*, 
  27.                         html : '<p><img alt="" src=\'#\'" /a>&nbsp;\ 
  28.                          :Admin'+ username + ' &nbsp;&nbsp;<a href="../others/others.html"> </a></p>'*/ 
  29.                     }); 

 
 
 
 
 
 
 
 

좋은 웹페이지 즐겨찾기