17 July 2013

实现JSP数据和JavaScript数据交互使用

对于WEB程序来说,前端(JavaScript)和后端(JSP/Servlet)是没法共用数据的,只能是后端程序(JSP)把数据输出,生成页面到前端,这时候生成的页面中的JavaScript代码才有可能得到所谓JSP数据。同样的,只有把JavaScript数据提交给后端JSP代码,JSP程序中才能得到JavaScript数据。
那如何实现在页面的JavaScript中使用JSP数据或是在JSP中使用页面的JavaScript数据呢?
一、页面中的JavaScript数据如何提交给后台的JSP程序
1.可以将JavaScript的数据以xxx.JSP?var1=aaa&var2=bbb的形式作为URL的参数传给JSP程序,此时在JSP中用
  1. <%String strVar1=request.getParameter("var1");%> 
就可以获取到JavaScript脚本传递过来的数据;
2.使用JavaScript通过在表单里加入隐藏域信息,然后用表单提交的方式把数据传递给JSP程序。
参考下面的脚本:
  1. <script language="JavaScript">   
  2. <!--   
  3. JavaScript脚本,放置在页面中的任何位置都可以   
  4. insertclick()函数获取JSP传递到页面中的变量varMC,   
  5. 然后就可以在JavaScript中修改这个变量的值,再通过   
  6.  post的方式提交给JSP程序来使用。   
  7. function insertclick(){   
  8. var1 = document.all.mc.value; //获取页面form中的变量值   
  9. var1var1 = var1 + "名称";   
  10. document.insertForm.submit();   
  11. }   
  12. //-->   
  13. </script>   
  14.  
  15. <!-- html页面form表单,放置在html页面中的位置不限 -->   
  16. <form name="insertForm" method="post" action="yourJSP">   
  17. <!-- 下面这一句是获取JSP程序中传递过来的变量值 -->   
  18. <input type="hidden" name="mc" value="<%=varMC%>">   
  19. <input type="button" value="提交" onclick="insertclick()">   
  20. </form> 
二、页面中的JavaScript数据如何使用后台的JSP数据
这个比较简单,直接在JavaScript脚本中用<%=strVar1%>就可以把JSP程序中的数据传递给JavaScript脚本使用了。
参考下面的脚本:
  1. <!-- html页面form表单,放置在html页面中的位置不限 -->   
  2. <form name="insertForm" method="post" action="yourJSP">   
  3. <input type="hidden" name="mc" value="">   
  4. </form>   
  5.  
  6. <script language="JavaScript">   
  7. <!--   
  8. JavaScript脚本,放置在页面中form以后的任何位置都可以   
  9. 使用JavaScirpt获取JSP传递到页面中的变量varMC,   
  10. 然后就可以在JavaScript中使用这个变量的值,通过   
  11. JavaScript脚本赋值给form中的隐藏域。   
  12. var1 = "<%=varMC%>"; //获取JSP中的变量值   
  13. document.all.mc.value = var1;   
  14. //-->   
  15. </script> 

No comments:

Post a Comment