我有一些问题,内容如下:是否可以使用jsp变量值来初始化JQUERY变量?
我如何使用jQuery代码的JSP变量/数组?在这里,我们拥有的JQUERY代码存储在单独的.js文件中,并且该文件包含在JSP文件中。
其实我想用JSP变量初始化JQUERY数组。 所以请指导我完成这项任务。
我有一些问题,内容如下:是否可以使用jsp变量值来初始化JQUERY变量?
我如何使用jQuery代码的JSP变量/数组?在这里,我们拥有的JQUERY代码存储在单独的.js文件中,并且该文件包含在JSP文件中。
其实我想用JSP变量初始化JQUERY数组。 所以请指导我完成这项任务。
在普通老式JSP
<script>
var someText = "<%= myBean.getText() %>";
</script>
使用EL(表达式语言)使用
<script>
var someText = "${myBean.text}";
</script>
的Struts
<script>
var someText = '<bean:write name="myBean" property="text" />';
</script>
使用JSTL
<script>
var someText = '<c:out value="${myBean.text}" />';
</script>
实质上,可以从JSP填充Javascript对象。不要忘记,脚本和标签只是作为HTML/XHTML呈现,所以JS无法与标签交谈,反之亦然。
不是直接。您必须将其设置到某个地方的页面中。
<script>
var fromJsp = '${theVar}';
</script>
请注意,对于复杂的对象,这可能会变得棘手。也许JSON序列化可以成为你的朋友。
另请注意,这只是单向的。从JavaScript中设置JSP变量的值是不可能的(因为在JSP完成其工作后JavaScript运行客户端)。
注意XSS的含义:String theVar =“hello”; alert(\“XSS \”); //“ –
您可以使用此 -
<input type="hidden" id="var1" value="<%=jspVar%>" />
然后在jQuery的使用VAR1。
假设变量是一个字符串并且不包含”字符 – Quentin
Java/JSP在服务器机器的web服务器上运行并生成HTML/CSS/JS代码。服务器机器将HTML/CSS/JS代码发送到客户机。 HTML/CSS/JS在客户机的webbrowser中运行。右击页面并查看源代码,您看不到任何Java/JSP代码。
JSP是一种视图技术,它提供了一个用于编写HTML/CSS/JS的模板,并且能够使用taglibs/EL与后端Java数据交互来控制页面流和访问数据。
无论何时您想让JavaScript访问Java/JSP变量,您只需编写一个Java变量就好像它是一个JavaScript变量。
<script>var foo = '${bean.foo}';</script>
是一个很好的例子。请注意,这些引号对于JavaScript本身而言是必需的,而不是JSP/EL。试想一下,${bean.foo}
回报bar
,然后将生成的HTML/CSS/JS其到达客户端的网页将最终看起来像:
<script>var foo = 'bar';</script>
每当你想要让Java/JSP的访问JavaScript的变量,你需要做的是让JavaScript激发(XML)HTTP请求。更多的背景信息和示例可以在this article中找到。
第二个示例不要使用JSTL,它被称为EL(表达式语言) – BalusC
感谢BalusC ...我正在寻找那个词....我已经更新了它... –
但EL是JSTL的一部分 - http: //www.jcp.org/aboutJava/communityprocess/first/jsr052(附录A):) –