解决方案 »

  1.   

    这个是javascript吧 var aCity= [11,12,13,14,15,21,22,23,31,32,33,34,35,36,37,41,42,43,44,45,46,50,51,52,53,54,61,62,63,64,65,71,81,82,91];
    var flag = false; var num = '91abc';
    var head = parseInt(num.substr(0,2)); for(var i=0; i<aCity.length; i++){
    if(aCity[i]==head){
    flag = true;
    break;
    }
    } if(flag==false){
    alert("输入的身份证号前两位地区不对!"); 
    tex.value=''; 
    tex.focus(); 
    return false; 
    }
    其实用带省份的更好判断。 var aCity={11:"北京",12:"天津",13:"河北",14:"山西",15:"内蒙古",21:"辽宁",22:"吉林",23:"黑龙江 ",31:"上海",32:"江苏",33:"浙江",34:"安徽",35:"福建",36:"江西",37:"山东",41:"河南",42:"湖北 ",43:"湖南",44:"广东",45:"广西",46:"海南",50:"重庆",51:"四川",52:"贵州",53:"云南",54:"西藏 ",61:"陕西",62:"甘肃",63:"青海",64:"宁夏",65:"新疆",71:"台湾",81:"香港",82:"澳门",91:"国外 "}  var num = '99abc'; if(aCity[parseInt(num.substr(0,2))] == null){ 
    alert("输入的身份证号前两位地区不对!"); 
    tex.value=''; 
    tex.focus(); 
    return false; 
    }
      

  2.   


    var str = '44122419931209XXXX'; 
    for(var num in aCity){
          if(str.substr(0,2)!=num){     //num就是aCity里面的key
               alert('输入的身份证号前两位地区不对!');
               tex.value='';
               tex.focus();
               return false;
           }
    }
    //判断身份证号还是用正则比较好