`
fp_moon
  • 浏览: 981738 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

JSP和JavaScirpt数据交互及特殊字符处理

阅读更多
JSP数据和JavaScirpt数据交互
JSP数据和 JavaScirpt数据交互使用问题的一种解决方法对于WEB程序来说,前端(JavaScript)和后端(JSP/Servlet)是没法共用数据 的,只能是后端程序(JSP)把数据输出
,生成页面到前端,这时候生成的页面中的JavaScript代码才有可能得到所谓jsp的数据。同样的,只有把 JavaScript里的数据提交给后端JSP代码, JSP程序中才能得到JavaScript的数据。 
那如何实现在页面的JavaScript中使用jsp中的数据或是在jsp中使用页面的JavaScript数据呢? 
一、页面中的JavaScript的数据如何提交给后台的jsp程序 
① 可以将JavaScript的数据以xxx.JSP?var1=aaa&var2=bbb的形式作为URL的参数传给JSP程序,此时在jsp中用 
<%String strVar1=request.getParameter("var1");%>就可以获取到JavaScript脚本传递过来的数据;                                                 
② 使用JavaScript通过在表单里加入隐藏域信息,然后用表单提交的方式把数据传递给JSP程序。 
参考下面的脚本: 
<script language="JavaScript"> 
/*************************************************************** 
* JavaScript脚本,放置在页面中的任何位置都可以 
* insertclick()函数获取JSP传递到页面中的变量varMC, 
* 然后就可以在JavaScript中修改这个变量的值,再通过 
* post的方式提交给JSP程序来使用。 
***************************************************************/ 
function insertclick(){ 
var1 = document.all.mc.value; //获取页面form中的变量值 
var1 = var1 + "名称"; 
document.insertForm.submit(); 
</script> 
<!-- html页面form表单,放置在html页面中的位置不限 --> 
<form name="insertForm" method="post" action="yourJSP"> 
<!-- 下面这一句是获取JSP程序中传递过来的变量值 --> 
<input type="hidden" name="mc" value="<%=varMC%>"> 
<input type="button" value="提交" onclick="insertclick()"> 
</form> 

二、页面中的JavaScript的数据如何使用后台的JSP程序的数据 
这个比较简单,直接在JavaScript脚本中用<%=strVar1%>就可以把jsp程序中的数据传递给JavaScript脚本使用了。
 
比较常用的是用脚本表达式赋值给一个JS变量,但这种情况当表达式的内容中含有特殊字符(如:“‘ \r  \n 等等)时JS会解析错误而不能往下执行。原因:比如内容中有双引号时,会与最外面的包含表达式的双引号产生混淆,会产生引号不配对的情况,就报错JS执行终断,再比如:如果表达式中有 \r时,JS变量获得的值不在同一行,这时JS也是不能往往下执行的,形如:若表达式内容为:abcdef\rghilm
var  serverToPage = "<%=request.getAttribute("showContent ") %>";
如果表达式中有回车,则实际页面的情况是:
var  serverToPage = "abcdef
 
ghilm";
所以就报错了,中断了执行。但可以用以下第二种方法处理有特殊字符的情况。
1.用脚本表达式赋值给一个JS变量:应将表达式用双引号括起来如:

<script  type="text/javascript">

var string = "<%=request.getAttribute("userName") %>"
而在脚本中声明的不须要引号:
<%! String name = "sasa" %>
<script type="text/javascript">
   function land(){
      var aaa="<%=request.getAttribute("userName")%>";   当userName为空时判断其为空如:if(aaa=="null"){//...}  
      var bbb="${userName }" ;   //作用域中的均要用引号,否则取不出来 如:"${userName }"
      var ccc=<%=name %>;    //而在脚本中声明的不须要引号:
      alert(aaa);
      alert(bbb);
      alert(ccc);
   }
   </script>
2.先将表达式的值显示在一个隐藏的HTML标签中如:<div></div>,<h></h>等。然后再用JS代码从隐藏标签中取值,显示在最终目地地。
index.jsp页面:
  <body>
   <form action="txtServlet" method="post">
     <textarea rows="10" cols="30" name="txtContent" ></textarea>
     <textarea rows="10" cols="30" id="showContent"></textarea>
     <h1 id="txtTemp" style="display:none">content:<%=request.getSession().getAttribute("contentString") %></h1>
     <input type="submit"  value="提交"/>
    </form>
  </body>
</html>
<script type="text/javascript">
  var node = document.getElementById("showContent");
  var tempNode = document.getElementById("txtTemp");
  node.value = tempNode.innerHTML;
</script>
txtServlet代码:
        String txtString = request.getParameter("txtContent");
        request.getSession().setAttribute("contentString", txtString);
        response.sendRedirect("index.jsp");
分享到:
评论

相关推荐

    Android与JSP数据交互

    在IT行业中,Android和JSP的数据交互是移动应用开发中常见的技术组合,特别是在构建服务器-客户端架构的应用时。本文将详细讲解如何利用Android客户端通过HTTP协议与运行在J2EE平台上的服务器进行数据交换,以及如何...

    前台Javascript转换特殊字符

    "前台JavaScript转换特殊字符"这个主题涉及到的是如何在JavaScript中处理和转换文本中的特殊字符,以确保数据的正确显示和处理。在网页开发中,经常遇到需要对用户输入进行清理或者格式化的情况,比如防止XSS(跨站...

    js日期时间控件 JavaScriptjs日期时间控件 jsp

    在JSP页面中,可以使用JavaScript来处理客户端的交互,而服务器端的业务逻辑和数据处理则通过JSP标签库或Java代码完成。 - 当用户在前端选择日期时间后,可以通过Ajax异步请求将选定的值发送到服务器,JSP页面接收...

    JSP动态网站开发 第1章 JSP使用基础第2章 HTML与CSS第3章 JavaScript脚本编程…………

    6. **ES6新特性**:包括let、const、箭头函数、模板字符串、Promise等,提高了JavaScript的编写效率和可读性。 本教程的"JSP动态网站开发"结合了HTML、CSS和JavaScript的基础知识,旨在帮助开发者构建功能丰富的...

    用JSP+JavaScript打造二级级联下拉菜单

    在IT领域,特别是Web开发中,使用JSP(JavaServer Pages)结合JavaScript来构建动态、交互式的用户界面是一项常见且有效的技术。本文将深入解析如何利用JSP与JavaScript实现一个功能丰富的二级级联下拉菜单,这是一...

    JSP+JavaScript打造二级级联下拉菜单

    charset=GB2312" language="java" errorPage="../error.jsp" %&gt;`:设置页面的基本属性,如内容类型、字符集和错误处理页。 - `&lt;%@ include file="../conn.jsp" %&gt;`:包含其他JSP文件,例如数据库连接配置文件。 - `...

    JSP(JAVASCRIPT)带复选框的树

    在IT行业中,JSP(JavaServer Pages)是一种用于创建动态网页的技术,而JavaScript则是一种广泛使用的客户端脚本语言,主要用于增强用户交互性。当我们提到"JSP(JAVASCRIPT)带复选框的树"时,我们谈论的是在一个网页...

    第4章 JSP和Web页面的交互.ppt

    这个章节还提到了JavaScript与JSP的结合,虽然具体内容没有给出,但通常JavaScript可以用于客户端的验证,比如检查用户输入的有效性,而JSP则在服务器端处理数据,确保安全性。 综合以上,本章内容主要涵盖了JSP...

    JSP中java代码与js之间的传值

    在JavaServer Pages (JSP) 中,我们经常需要在Java代码和JavaScript之间传递数据。这在构建动态网页时尤其重要,因为Java代码通常用于处理服务器端逻辑,而JavaScript则负责客户端交互。这篇博客将探讨如何在JSP中...

    jsp.zip_javascript

    在ES6(ECMAScript 2015)及以后的版本中,引入了更多特性,如let和const声明变量、模板字符串、箭头函数、Promise等,使得JavaScript更加现代化和强大。 为了更好地利用这个压缩包中的资源,你需要解压文件,查看...

    jsp点击实现导出数据

    在这个Servlet中,我们首先处理数据,将其转换为CSV格式的字符串,然后设置响应头以指示这是一个文件下载,最后将CSV内容写入响应流。 这个例子中,我们导出的数据被格式化为CSV文件,因为这是一种常见的数据交换...

    jsp+javascript+html+正则表达式+mysql+spring+css+strtus技术文档

    【标题】"jsp+javascript+html+正则表达式+mysql+spring+css+struts技术文档"涉及了Web开发中的多个关键技术和框架,这些技术是构建动态、交互式网站的基础。下面将对这些技术进行详细的阐述: 1. **JSP(Java...

    javascript原码大全.rar_jsp 源码_;大全

    在实际开发中,JavaScript通常负责页面的动态效果和用户交互,而JSP处理服务器端逻辑,两者配合可以实现强大的Web应用。例如,当用户在前端填写表单并提交时,JavaScript可以进行基本的验证,然后通过AJAX发送请求到...

    jsp网页产生json传值到java的servlet,再回传到jsp页面

    在这个过程中,"JspJsonServlet"可能是项目中的一个Servlet类名,负责接收和处理来自JSP的JSON请求。文件可能包含Servlet的实现,包括JSON解析和序列化以及业务逻辑处理。 总结来说,这个流程展示了如何利用JSP、...

    jsp javascript html 技术讲座 实例

    1. 变量与数据类型:JavaScript支持基本数据类型(如字符串、数字、布尔值)和引用数据类型(对象)。变量声明使用`var`关键字,例如`var myVar = "Hello, World!";` 2. 控制结构:包括条件语句(如`if...else`,`...

    mysql jsp JavaScript php dhtml 参考手册

    学习DHTML,你需要理解CSS布局、JavaScript事件处理、DOM操作以及如何利用这些技术实现动画效果和用户交互。 这些参考手册将为学习和开发这些技术提供详细的指导,帮助你理解每个技术的基本概念、语法和最佳实践。...

    第2章 JSP编程基础知识-JavaScript.ppt

    JavaScript是一种轻量级的解释型编程语言,主要用于实现客户端的动态效果和交互。在JSP(JavaServer Pages)中,JavaScript常常与服务器端的Java技术结合,提供用户界面的实时反馈和增强用户体验。本章节主要介绍了...

    jsp客户端验证javascript

    JavaScript是一种广泛应用于网页前端的脚本语言,可以用来实现客户端的交互和数据验证。在JSP页面中,可以通过`&lt;script&gt;`标签嵌入JavaScript代码,用于处理用户输入的即时反馈,提高用户体验并减轻服务器负担。 ###...

    jsp ,JavaScript,CSS帮助文档

    它允许开发人员将HTML代码、Java代码和脚本语言结合在一起,以便在服务器端处理数据并生成响应。JSP的核心概念包括: 1. **JSP页面结构**:JSP页面由静态内容(HTML、CSS、JavaScript)和动态元素(Java代码)组成,...

    JSP预备知识-JavaScript

    JavaScript是一种广泛应用于网页和网络应用开发的轻量级脚本语言。...JavaScript的主要特点包括: 1. **解释型语言**:与编译型语言如...了解和掌握JavaScript的基础知识,对于学习和使用JSP等服务器端技术也至关重要。

Global site tag (gtag.js) - Google Analytics