2012-09-19 49 views
0

我有一个简单的问题,但我不能得到该工具的工作。这是我正在使用的代码。当我点击main.jsp中的按钮时,我从reportbuilder.do中得到一个更新的图像,但它是一个空白图像(实际上,它在图像中给出时间戳以显示已创建新图像)。在reportbuilder.do中,我可以看到reportType,reportScope和reportTime都是空的。我究竟做错了什么?将参数从一个JSP传递给另一个servlet,信息没有被传递

main.jsp中

<html> 
    <head> 
     <title>Failing example</title> 
     <script src="/scripts/jquery-1.8.1.js"></script> 
     <script> 
      $(document).ready(function() { 
       $("#updateReport").click(function() { 
        $("#chart1").load("/chart.jsp?reportType=${reportType}&reportScope=${reportScope}&reportTime=${reportTime}"); 
        return false; 
       }); 
      }); 
     </script> 
    </head> 
    <div id="chart1"> 
     <img src="/reportbuilder.do?"> 
    </div> 
    <div id="dropDown1"> 
     <form method="GET" action="/chart.jsp"> 
      <select name="reportType" style="width:100%"> 
       <option value="devBugFix">Developer Bug Fixes</option> 
       <option value="devHrsWork">Developer Hours Worked</option> 
      </select> 
      <select name="reportScope" style="width:100%"> 
       <option value="cmcProg">CMC Program</option> 
       <option value="equFarmAs">Equestrian Farmer's Association</option> 
      </select> 
      <select name="reportTime" style="width:100%"> 
       <option value="daily">Daily</option> 
       <option value="weekly">Weekly</option> 
       <option value="monthly">Monthly</option> 
      </select> 
      <a href="#" id="updateReport"><button>Update Chart</button></a> 
     </form> 
    </div> 
</html> 

chart.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %> 
<html> 
    <body> 
     <img src="/reportbuilder.do?reportType=${reportType}&reportScope=${reportScope}&reportTime=${reportTime}" alt="Image Loading Failed"> 
    </body> 
</html> 

谢谢您的时间!

回答

0

试试这个,看看你是否可以在其他JSP工艺参数:

$("#chart1").load("/chart.jsp,  
        {reportType:${reportType}, 
        reportScope:${reportScope}, 
        reportTime:{reportTime}" 
); 
0

这就是因为你使用JavaScript中的占位符是空的。此JavaScript代码在客户端(浏览器)执行,因此它们不会被任何动态替换(这是我认为您期望的),当JSP呈现时它们被替换为空值:

$("#chart1").load("/chart.jsp?reportType=${reportType}&reportScope=${reportScope}&reportTime=${reportTime}"); 

你应该从html表单中获取它们的值。给选择一个ID并获得它们的值,例如使用$("#reportType")

相关问题