• 95.Extjs 表单中自定义的验证规则 VTypes


    1

     1 Ext.onReady(function(){
     2     
     3     Ext.QuickTips.init();
     4     //重写 (自定义)xtype
     5     Ext.apply(Ext.form.VTypes,{
     6         repetition:function(val,field){
     7             if(field.repetition){
     8                 var pass = Ext.getCmp(field.repetition.compareTo);
     9                 if(Ext.isEmpty(pass)){
    10                     Ext.Msg.show({
    11                         title:'Error',
    12                         msg:'没有要对比的组件',
    13                         icon:Ext.Msg.error,
    14                         buttons:Ext.Msg.OK
    15                     });
    16                     //return;
    17                 }
    18                 if(val == pass.getValue()){
    19                     return true;
    20                 }else{
    21                     return false;
    22                 }
    23             }
    24         },
    25         repetitionText:"两次输入的密码不一致"
    26     });
    27     
    28 
    29     //定义登录表单
    30     var form = new Ext.form.FormPanel({
    31         id:'loginform',
    32         labelAlign:'right',
    33         buttonAlign:'center',
    34         frame:true,
    35         monitorValid:true,
    36         items:[{
    37             xtype:'textfield',
    38             fieldLabel:'姓名',
    39             name:'username',
    40             minLength:6,
    41             allowBlank:false
    42         },{
    43             id:'password',
    44             xtype:'textfield',
    45             inputType:'password',
    46             fieldLabel:'密码',
    47             name:'password'
    48         },{
    49             id:'repasswda',
    50             xtype:'textfield',
    51             inputType:'password',
    52             fieldLabel:'确认密码',
    53             name:'compasswd',
    54             vtype:"repetition",
    55             repetition:{ compareTo: 'password' }
    56 
    57         }],
    58         buttons:[
    59             {text:'提交',
    60              handler:loginSubmit,
    61              formBind:true
    62             },
    63             {text:'重置',
    64              handler:function(){
    65                  Ext.getCmp('loginform').getForm.reset();
    66              }
    67             }
    68         ]
    69     });
    70     //表单定义结束
    71     
    72     //提交表单是触发的函数
    73     function loginSubmit(){
    74         Ext.getCmp('loginform').getForm().submit({ //这里就把表单的值带过去了
    75             url:'login.php',
    76             success:function(form,action){
    77                 //TODO 跳转到其他页面
    78             },
    79             failure:function(form,action){
    80                 alert(action.result.msg);
    81             }
    82         });
    83     }
    84     
    85     //定义一个窗口
    86     
    87     var win = new Ext.Window({
    88         title:'用户登录',
    89         layout:'fit',
    90         300,
    91         height:200,
    92         closable:false,
    93         resizable:false,
    94         constrain:true,
    95         items:[form]        
    96     });
    97     win.show();
    98 })
  • 相关阅读:
    25.大白话说java并发工具类-CountDownLatch,CyclicBarrier,Semaphore,Exchanger
    23.FutureTask基本操作总结
    22.线程池之ScheduledThreadPoolExecutor
    Jenkins + SVN搭建php持续集成
    Django学习系列之Form表单结合ajax
    Django学习系列之模板系统
    Django学习系列之路由系统
    zabbix学习系列之基础概念
    Python学习系列之反射
    Django学习系列之模板
  • 原文地址:https://www.cnblogs.com/sharpest/p/7704289.html
Copyright © 2020-2023  润新知