如果在js中读取jsp中input的值时会出现undefined那是什情况?感觉没有写错但是就是不能访问到。求助各位大神帮忙解决。

解决方案 »

  1.   

    看看是不是加载顺序的问题 js放后面试试 不行就看看jsp生成的html对不对
      

  2.   

    上代码,应该你写错了
    或者你使用firefox的firebug进行调试
      

  3.   


    js1.js
    function checkNum(){
        var num1=document.getElementById("num1").Value;
    var num2=document.getElementById("num2").Value;

    window.alert(num1);

    if(num1==null||num2==null)
    {
    window.alert("输入不能为空");
    return false;
    }
    }
      

  4.   

    [code=JSP]result.jsp
    <%@ page language="java" import="java.util.*" pageEncoding="gb2312"%><html>
      <body>
        <%
            String num1=request.getParameter("num1"); 
            String num2=request.getParameter("num2");
            String oper=request.getParameter("operator");
            
          double res=0;
          
          double d_num1=Double.parseDouble(num1);
          double d_num2=Double.parseDouble(num2);
          
          if(oper.equals("+"))
          {
              res=d_num1+d_num2;
          }
          else if(oper.equals("-"))
          {
              res=d_num1-d_num2;
          }
          else if(oper.equals("*"))
          {
              res=d_num1*d_num2;
          }
          else if(oper.equals("/"))
          {
              res=d_num1/d_num2;
          }
          out.println(res);
        %>
      </body>
    </html>
    [/code]
      

  5.   

    <body>
        <form action="/JSPCourse/result.jsp" method="post"> 
                          请输入第一个数:<input type="text" id="num1" name="num1"/><br />
                          请输入第二个数:<input type="text" id="num2" name="num2"/><br />
                          请选择运算符:<select name="operator">
                           <option value="+">+</option>
                           <option value="-">-</option>
                           <option value="*">*</option>
                           <option value="/">/</option>
                         </select><br />
             <input type="submit" onclick="return checkNum()" value="计算" />
        </form>
        
      </body>
      

  6.   

    我在前面已经引入了,但是获取id=“num1”的值的时候都会显示空,你可以运行一下看看,看看是错在哪啊?
      

  7.   

    onclick里面的代码写错了,调用checkNum方法的时候不需要return语句,去掉return试试
      

  8.   

    retrun去掉也是不行,我觉得和retrun没什么关系吧,应该是js不能读到jsp中input的值!如果可以的话你可以运行一下!
      

  9.   

    var num1=document.getElementById("num1").value; 
      

  10.   

    你是说把V写成小写的吗?写成小写的话,jsp的input的值为空时就会报错了!
      

  11.   

    可以了,我刚刚把V换成大小写的,然后把null换为“”就可以了,谢谢给位了哈!