下面这个是验让输入框不为空的js代码:JScript.js
//验证输入框是否为空
function checkInput(name, error)
{ flag = false;
  if (document.getElementById(name).value == "")
  {
    alert(error);
    document.getElementById(name).focus();
    flag = false;
  }
  else
  {
     falg =  true;
  }
  return flag;
}我在.aspx调用时的代码:
<script language="javascript" type="text/javascript" src="../../../App_Themes/Red/JS/JScript.js"charset="gb2312"> </script>
<script language="javascript" type="text/javascript">
       function check()
       {
         checkInput("SchoolName","请输入学校名称")
       } <input  type="text" id="txtSchoolName" runat="server" name="SchoolName" onclick="check()" />
出现一个错误:缺少对象,还有就是提交时,它提示了错误,可是页面还是提交到服务器了

解决方案 »

  1.   

    1.应该用checkInput("texSchoolName","请输入学校名称") 
    2.去掉runat="server"
      

  2.   

          function check() 
          { 
            return checkInput("txtSchoolName","请输入学校名称") ;//注意:使用控件的ID(getElementById)
          } //要把true或false返回(return),这样才不会出现明明false但还是提交的情况
    <input  type="text" id="txtSchoolName" runat="server" name="SchoolName" onclick="return check()" /> 
      

  3.   

    我是菜鸟,想知道function checkInput(name, error) 
    { flag = false; flag 不用声明var 也能用么?
      

  4.   

    function checkInput(name, error) 
    { flag = false; 
      if (document.getElementById(name).value == "") 
      { 
        alert(error); 
        document.getElementById(name).focus(); 
        flag = false; 
      } 
      else 
      { 
        falg =  true; 
      } 
      return flag; 
    } 红色的地方应该是flag吧
      

  5.   

    runat ='server' 不用去掉2楼的方法应该可行
      

  6.   


    不用去掉  去掉后台不能得值checkInput("<%=txtSchoolName.ClientID%>","请输入学校名称") 那里传的是客户端ID  如上就可以了