﻿    var $j = jQuery.noConflict();
    var canSubmit = false;
    function loadCheckJs(){
        $j('input[vtype]').each(function(){
            var vtype = $j(this).attr('vtype');
            var compareId = $j(this).attr('compareId');
            var text = $j(this);
            $j(this).initDom(vtype);
            $j(this).focus(function(){
                text.edit(text);
            });
            $j(this).keyup(function(e){
                if(e.keyCode != 9){
                    text.check(vtype,compareId,text);
                }
            });
        });
    }

    $j.fn.extend({
        // 初始化dom元素
        initDom: function(vtype) {
            //$j(this).after('<img src="images/focus.gif" style="display:none; margin-left: 8px;" />');
            if ($j(this).parent().attr('style') == undefined) {
                $j(this).wrap('<div style="float: left;"></div>');
          }
            // $j(this).after('<font color="red" style="margin-left: 4px;"></font>');
            $j(this).before('<div class="error" style="display: none;"></div>');
        },

        // 验证
        check: function(vtype, compareId, text) {
            // 比较2个控件的value值
            if (isEmpty(compareId)) {
                var val = text.val();
                var comPareVal = $j('#' + compareId).val();
                if (val != comPareVal || !isEmpty(comPareVal)) {
                    text.prev().html(text.attr('msg')).show();
                    text.attr('style', 'background-color: #FFFF80');
                    return false;
                }
                $j('#' + compareId).prev().hide();
                text.removeAttr('style');
                text.prev().html(text.attr('msg')).hide();
                return true;
            }
            // 非空验证
            if (vtype == 'notNull') {
                var val = text.val();
                if (isEmpty(val)) {
                    text.prev().html(text.attr('msg')).hide();
                    return true;
                } else {
                    //text.prev().attr('src', 'images/no.gif').show();
                    text.prev().html(text.attr('msg')).show();
                    return false;
                }
            }
            // email验证
            if (vtype == 'email') {
                var regEmail = /\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/;
                var email = text.val();
                if (isEmpty(email) && regEmail.test(email) && email.length <= 50) {
                    text.prev().hide();
                    return true;
                } else {
                    text.prev().html(text.attr('msg')).show();
                    return false;
                }
            }
            // 数字验证            
            if (vtype == 'integer') {
                var regInteger = /^[0-9]*[1-9][0-9]*$/;
                var val = text.val();
                if (isEmpty(val) && regInteger.test(val) && val.length < 30) {
                    text.prev().html(text.attr('msg')).hide();
                    return true;
                } else {
                    text.prev().html(text.attr('msg')).show();
                    return false;
                }
            }
            //电话号码验证
            if (vtype == 'telePhone') {
                var reg = /(\d{3}-\d{3}-\d{4})|(\d{5,})/;
                var val = text.val();
                if (isEmpty(val) && reg.test(val) && val.length < 30) {
                    text.prev().html(text.attr('msg')).hide();
                    return true;
                } else {
                    text.prev().html(text.attr('msg')).show();
                    return false;
                }
            }
             //手机和固定电话2选1验证
          if(vtype=='phone'){
              var reg = /(\d{3}-\d{3}-\d{4})|(\d{5,})/;
              var regInteger = /^[0-9]*[1-9][0-9]*$/;
              var phoneVal=$j('#txtPhone').val();
              var mobileVal=$j('#txtMobilePhone').val();
              if(phoneVal=="" && mobileVal=="")
              {
               text.prev().html(text.attr('msg')).show();
              //  $j('#txtMobilePhone').prev().html($j('#txtMobilePhone').attr('msg')).show();
                return false;
               }
              else 
              {
                if(mobileVal=="")
                {
                  $j('#txtMobilePhone').prev().html($j('#txtMobilePhone').attr('msg')).hide();
                  if(phoneVal=="")
                  {
                    text.prev().html(text.attr('msg')).hide();
                    return false;
                  }
                  else
                  {
                    if(reg.test(phoneVal))
                    {
                      text.prev().html(text.attr('msg')).hide();
                      return true;  
                    }
                    else
                    {
                        text.prev().html(text.attr('msg')).show();
                        return false;
                    }
                  }
                }
                else
                {
                    if(phoneVal=="")
                    {
                        text.prev().html(text.attr('msg')).hide();
                        if(regInteger.test(mobileVal))
                        {
                           $j('#txtMobilePhone').prev().html($j('#txtMobilePhone').attr('msg')).hide();
                           return true; 
                        }
                        else
                        {
                             $j('#txtMobilePhone').prev().html($j('#txtMobilePhone').attr('msg')).show();
                            return false;
                        }
                    }
                    else
                    {
                        if(regInteger.test(mobileVal))
                        {
                            $j('#txtMobilePhone').prev().html($j('#txtMobilePhone').attr('msg')).hide();
                            if(reg.test(phoneVal))
                            {
                                text.prev().html(text.attr('msg')).hide();
                                return true;
                            }
                            else
                            {
                                text.prev().html(text.attr('msg')).show();
                                return false;
                            }
                        }
                       
                    }
                }                      
                                     
                            
             }         
             
           }
           
           //手机验证
           if(vtype=="Mobile")
           {
              var reg = /(\d{3}-\d{3}-\d{4})|(\d{5,})/;
              var regInteger = /^[0-9]*[1-9][0-9]*$/;
              var phoneVal=$j('#txtPhone').val();
              var mobileVal=$j('#txtMobilePhone').val();
              if(mobileVal==""&& phoneVal=="")
              {
              text.prev().html(text.attr('msg')).show();
              // $j('#txtPhone').prev().html($j('#txtPhone').attr('msg')).hide();
                return false;
              }
              else
              {
                if(mobileVal=="")
                {
                    text.prev().html(text.attr('msg')).hide();
                    if(phoneVal!=null)
                    
                    {
                        if(reg.test(phoneVal))
                        {                    
                            $j('#txtPhone').prev().html($j('#txtPhone').attr('msg')).hide();
                            return true;
                        }
                        else
                        {
                            $j('#txtPhone').prev().html($j('#txtPhone').attr('msg')).show();
                            return false;
                        }
                    }
                    else
                    {
                        $j('#txtPhone').prev().html($j('#txtPhone').attr('msg')).hide();
                        
                        return false;
                
                    }
                }            
                else
                {
                    if(phoneVal=="")
                    {   
                        $j('#txtPhone').prev().html($j('#txtPhone').attr('msg')).hide();
                        if(regInteger.test(mobileVal))
                        {
                            text.prev().html(text.attr('msg')).hide();
                            return true;
                        }
                        else
                        {
                            text.prev().html(text.attr('msg')).show();
                            return false;
                        }
                    }
                    else
                    {
                           
                            if(regInteger.test(mobileVal))
                            {
                                text.prev().html(text.attr('msg')).hide();
                                if(reg.test(phoneVal))
                                {
                                    $j('#txtPhone').prev().html($j('#txtPhone').attr('msg')).hide();
                                    return true;
                                }
                                else
                                {
                                   $j('#txtPhone').prev().html($j('#txtPhone').attr('msg')).show();
                                   return false;
                                }
                                
                            }
                            else
                            {
                                
                                text.prev().html(text.attr('msg')).show();
                                if(reg.test(phoneVal))
                                {
                                   $j('#txtPhone').prev().html($j('#txtPhone').attr('msg')).hide();
                                    return false; 
                                }
                                else
                                {
                                   $j('#txtPhone').prev().html($j('#txtPhone').attr('msg')).show();
                                   return false; 
                                }
                                
                            }
                     }
                  }
               }
                
           }       
        },

        // 编辑样式
        edit: function(text) {
            //text.prev().attr('src', 'images/focus.gif').show();
        },

        //处理ajax
        processAjax: function() { }

    });
    
    // 验证非空，非空时返回true
    function isEmpty(val){
        val = (val || "").replace(/^\s+|\s+$/g, "")
        if(val == ""){
            return false;
        }
        return true;
    }
    
    // 表单提交验证
    function checkForm(){
        var returnValue = true;
        $j('input[vtype]').each(function(){
            canSubmit = $j(this).check($j(this).attr('vtype'),$j(this).attr('compareId'),$j(this));
            if(canSubmit != undefined && canSubmit == false){
                returnValue = false;
            }
        });
        return returnValue;
    }