2014-10-30 96 views
1

即时尝试从jsp使用java脚本加载servlet。我也试图传递两个参数。该页面加载,但现在我打印一个系统,它假设给我的id和车辆值,但它使车辆猫头鹰空。从jsp加载servlet并尝试传递多个参数

ScanServlet的doGet被称为ID = 1个车辆= [对象HTMLParagraphElement]车辆= NULL

这是代码

<body onload="notifyOnLoad(<%=request.getParameter("imgid")%>)"> 
    <img id="imgBarcode" src="ImageServlet?imgid=<%=request.getParameter("imgid")%>&vehicle=<%=request.getParameter("vehicle")%>" width=<%=request.getAttribute("Width")%> height=<%=request.getAttribute("Height")%>><br/> 
    <h4>Barcode Details</h4> 
    <p>Name :- <%=request.getAttribute("name")%></p> 
    <p>Type :- <%=request.getAttribute("type")%></p> 
    <p>Value :- <%=request.getAttribute("value")%></p> 
    <p id="wtf">type :- <%=request.getParameter("vehicle")%></p> 
    <script type="text/javascript"> 
     function notifyOnLoad(imgid) { 
      var xmlhttp; 
      var vehicle =document.getElementById("wtf"); 
      if(window.XMLHttpRequest) { 
       // code for IE7+, Firefox, Chrome, Opera, Safari; 
       xmlhttp = new XMLHttpRequest(); 
      } 
      else{ 
       /*code for IE6, IE5*/ 
       xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); 
      } 

      xmlhttp.onreadystatechange = function() { 
       if(xmlhttp.readyState == 4 && xmlhttp.status == 200) { 
        window.location = xmlhttp.responseText; 
       } 
      } 
      xmlhttp.open("GET", "ScanServlet?imgid="+imgid+"vehicle="+vehicle, true); 
      xmlhttp.send(); 
     } 
    </script 

> 
</body> 

回答

0

你不能直接访问请求参数在JavaScript中你的方式试。

<input type='hidden' name='field1' id='imgid' value='<%=request.getParameter("imgid")%>' /> 

访问与它的id的JavaScript变量,

<script type="text/javascript"> 
     function notifyOnLoad(imgid,vehicle) { 
      var xmlhttp; 
      var imgid=document.getElementById("imgid"); 
      xmlhttp.open("GET", "ScanServlet?imgid="+mgid+"&vehicle="+vehId, true); 
      xmlhttp.send(); 
     } 

+0

我想传递两个变量什么是的语法?是该语法正确 xmlhttp.open( “GET”, “ScanServlet imgid =?” + imgid + “车辆=” +车辆,TRUE); – 2014-10-30 06:55:24

+0

更新了我的答案,检查它:) – 2014-10-30 07:01:34

+0

我更新了问题现在我得到一个新的错误请帮助 – 2014-10-30 09:10:18