我写了一个javascript函数,用来验证输入TextBox的数据是否符合要求。不知道是否能够把控件的ID作为参数传进去,因为有好多个TextBox,这样就不必为每一个TextBox写一个验证函数了。如果可以的话,怎么写?直接写进去肯定是不行啊。
谢谢!

解决方案 »

  1.   

    当然可以啊,类似这样
    function chkVal(id)
    {
      var textbox=document.getElementById("id");
      if(var.value=="123")
        return true;
      return false;
    }
      

  2.   

    function check(id){
       var comp = document.getElementById(id).value;
       if(value == ""){
         alert('不能为空')
       }
    }
    这样?
      

  3.   

    function check(id){
       var ele= document.getElementById(id);
       if(ele.value == "" || ele.value == null){
         return false;
       }else{
          return true;
       }
    }
    这样?
      

  4.   

    我采用的完全限定引用来使用ID。比如,
    function checkNum(objectId)
    {
      var ctrlId = <%=objectId.ClientID%>;
      var ctrlValue = document.getElementById(ctrlId).value;
      if(ctrlValue == "")
      {
         alert("不能为空");
       }
    }
    将控件的ID传进去,这样的话,当有多个TextBox时,就可以方便使用了。但是采用了完全限定引用,就有错误“objectId没有clientId属性”了。请教?
      

  5.   

    你是在jsp里做操作么这是?
    你完全没必要把取值操作写在js中 你可以写一个隐藏域 其value用<%= %>取 或用JSTL表达式取<input type="hidden" value="${objectId.ClientID}" id="myId"> <!-我习惯JSTL 你可以改为<%= %>-->function checkNum()
    {
      var ctrlId = document.getElementById('myId').value;//取出动态的id
      var ctrlValue = document.getElementById(ctrlId).value;
      if(ctrlValue == "")
      {
         alert("不能为空");
       }
    }
      

  6.   

    <html>
    <head>
    <script>
    function aaa(id)
    {
    var value = document.getElementById(id).value;
    alert('ID为:' + id + '\n' + '内容为:' + value);
    }
    </script>
    </head>
    <body>
    <input type=text id=text1 onblur=aaa(this.id)>
    <br>
    <input type=text id=text2 onblur=aaa(this.id)>
    <br>
    <input type=text id=text3 onblur=aaa(this.id)>
    <br>
    </body>
    </html>