<tr>
<td>身高</td>
<td><input type="text" name="sg" id="sg" /></td>
<td><div id="forsg"><font color="red">请输入身高或保密</font></div></td>
</tr>
想要验证一下文本输入框中只能输出身高(xxcm,xxxcm)或“保密”,正则表达式应该怎么写,求赐教...
var zz=/^[1-9]\d{1,2}[c][m]$/&/^保密的unicode$/
上面那样写正确吗...?
保密的unicode码是神马也不知道,不会查- -。正则表达式Unicode

解决方案 »

  1.   

    <tr>
    <td>身高</td>
    <td><input type="text" name="sg" id="sg" onblur="checkHeight(this)" /></td>
    <td><div id="forsg"><font color="red">请输入身高或保密</font></div></td>
    </tr>
    <script>
        function checkHeight(o) {
            if (!/^(\d{2,3}cm|保密)$/i.test(o.value)) {
                alert('身高数据不正确!');
                o.select();
            }
        }
    </script>
      

  2.   

    /^(?!.*_)(\d)(\d)(\d)\3?\2\1$/(?!.*_)是什么意思 
      

  3.   

    <tr>
         <td>身高</td>
         <td><input type="text" name="sg" value="<%=pi.getSg() %>" onblur="yzsg()"/></td>
         <td><div id="forsg"><font>请输入身高或保密</font></div></td>
         </tr><script> 
     function yzsg(){
          var zz2=/^(\d{2,3}cm|保密)$/;
          var value2=document.getElementById("sg").value;
          var div=doucument.getElementById("forsg");
          var b2=zz2.test(value2)
          if(b2){
              div.innerHTML="<font color='red'>ok</font>";
          }else{
              div.innerHTML="<font color='red'>身高数据有误!</font>"
          }
        }
    </script> 
    这样为什么不行...?
      

  4.   


    我觉得吧,既然是身高,肯定得符合实际情况,\d{2,3} 这样的话10cm或者999cm 也符合?
    /^[1]\d{2}[c][m]|[2][1-5][0][c][m]|[3-9]\d{1}[c][m]|保密$/ 
    这是30cm至250cm或者保密,好久木有用过了,你再看看
      

  5.   

    <tr>
         <td>身高</td>
         <td><input type="text" name="sg" id="sg" value="<%=pi.getSg() %>" onblur="yzsg()"/></td>
         <td><div id="forsg"><font>请输入身高或保密</font></div></td>
         </tr><script> 
     function yzsg(){
          var zz2=/^(\d{2,3}cm|保密)$/;
          var value2=document.getElementById("sg").value;
          //var div = doucument.getElementById("forsg");
          var div = document.getElementById("forsg");
          var b2=zz2.test(value2)
          if(b2){
              div.innerHTML="<font color='red'>ok</font>";
          }else{
              div.innerHTML="<font color='red'>身高数据有误!</font>"
          }
        }
    </script>
      

  6.   

    用ie试试,ie6<td><input type="text" name="sg" value="<%=pi.getSg() %>" onblur="yzsg()"/></td>sg不是id在非ie中用getElementById不行