我要在一个表单里判断一个TEXT里是否为空,写了一个javascript:
<script language=javascript>
<!--
没有学过javascript,看了别人的模仿了一个:
function check(){
   if (document.form1.t1.value==null||document.form1.t1.value==" "){
   window.alert("请输入查询条件!")
   document.form1.t1.select();
   document.form1.t1.focus();
   return;}}
--> 
</script>
表单如下:
<form method="post" action="cksj.jsp" name="form1">
<input type="text" name="t1" size="20">   
<input type=submit value='查询' name="B1" onclick=check()>
</form>当我单击查询按钮的时候出现NullPointerException的错误。不清楚为什么javascript为什么没有执行?还是我的那个cksj.jsp出现了错误。顺便请教一下有经验的高手,一般出现空指针的错误是哪些问题引起的,我已经碰到好多次这样的错误,每次都手足无措,痛苦.....

解决方案 »

  1.   

    不好意思,那句话“没有学过javascript,看了别人的模仿了一个:”是多余的,我在代码里没有这句话。
      

  2.   

    1.用submit提交时,可以将检查的事件,放在form的onSubmit中
    2.空指针的错,应该是你的action报的,一般是对象没有实例化,比如,你request.getParameter的参数是null
      

  3.   

    代码修改如下:
    <script language=javascript>
    function check(){
       if (window.form1.t1.value.equal("")){
         window.alert("请输入查询条件!")
         window.form1.t1.focus();
       }else
         form1.submit();
    }
    --> 
    </script>
    表单如下:
    <form method="post" action="cksj.jsp" name="form1">
    <input type="text" name="t1" size="20">   
    <input type="button" value='查询' name="B1" onclick=check()>
    </form>
      

  4.   

    String val = request.getParameter("t1");
    if( val == null)
    {
        val = "";
    }一般需要判断一下是否是null,再引用至于其它还有很多地方可能出现空指针:处理的方法也有些不同.基本原则就是,看看你引用的变量是否正确的初始化了
      

  5.   

    如果没有cksj.jsp页面就创建一个这样的页面,或者action="",就是提交到本页面也行
      

  6.   

    to:
    CristinNa(深白色)老兄,晕了吧,js里哪有equal()?推荐这么写
    <script language=javascript>
    function check(){
      if (document.form1.t1.value.==""){
        window.alert("请输入查询条件!")
        document.form1.t1.focus();
        return false;
      }
      return true;
    }
    --> 
    </script>
    表单如下:
    <form method="post" action="cksj.jsp" name="form1" onsubmit="return check();">
    <input type="text" name="t1" size="20">   
    <input type="submit" value='查询' name="B1">
    </form>你的问题主要在cksj.jsp页
      

  7.   

    首先,NullPointException肯定是.jsp抛出的,原因是你的js控制没有起作用,页面到了cksj.jsp。
    <form method="post" action="cksj.jsp" name="form1" onsubmit="return check();">
       …
       <input type=submit value='查询' name="B1">
    </form>在check()中,满足条件return true,否则return false.
      

  8.   

    <script language=javascript>
    function check(){
       if (window.form1.t1.value==""){
         window.alert("请输入查询条件!")
         window.form1.t1.focus();
       }else
         form1.submit();
    }
    --> 
    </script>
      

  9.   

    <%@ page contentType = "text/html; charset=gb2312"%>
    <html>
    <head>
    <script language=javascript>
    function check(){
       if (form1.t1.value == "" || form1.t1.value == null){
         alert("请输入查询条件!")
         document.form1.t1.focus();
       }else
         form1.submit();
    }
    --> 
    </script>
    <title>标题</title>
    </head>
    <body>
    <form method="post" action="" name="form1">
    <input type="text" name="t1" size="20">   
    <input type="button" value='查询' name="B1" onclick=check()>
    </form>
    </body>
    </html>
      

  10.   

    to:
    dreamover(梦醒了)
    你这样些表单照样可以提交啊
      

  11.   

    to CristinNa(深白色) :
    dreamover(梦醒了)的写法也可以的,不会自动提交,只有当check()返回true才提交