将变量从 JSP 传递到 Javascript
Posted
技术标签:
【中文标题】将变量从 JSP 传递到 Javascript【英文标题】:Passing variable from JSP to Javascript 【发布时间】:2013-07-17 14:53:27 【问题描述】:我知道已经有这方面的问题,但我不能简单地完成这项工作,我有一个 JSP 文件,其中包含一个 java 变量:
String test = "Hello";
而且我需要在嵌入在同一个 JSP 文件中的 javascript 中读取这个值,我尝试了很多选项,但它不起作用,并且为了安全我不想使用 URL 或隐藏值传递值。
关于如何使其工作的任何想法?
【问题讨论】:
【参考方案1】:我知道这是旧的,但这对我有用:
var javaScriptVar="<%out.print(javaString);%>";
您需要确保如果您使用的是外部 js 文件(在 jsp 文件之外),则上述行必须位于“include”脚本标记之前。例如这是jsp文件:
var javaScriptVar="<%out.print(javaString);%>";
<script src="some_location/test.js"></script>
【讨论】:
【参考方案2】:最好的方法是在你的 javascript 代码中使用类似以下的东西;
var myvar = '$jspvar';
【讨论】:
我需要访问 【参考方案3】:你可以通过调用html部分的一些方法来传递值..
<input type="submit" value="view" onclick="callpro('<%= varname %>')" />
【讨论】:
【参考方案4】:var jsvariable="<%=test%>";
【讨论】:
我已经试过了:var jsvariable="";但它不起作用:( “不起作用”是什么意思?什么是输出 HTML?请发布完整的 JSP。 我尝试传递的变量总是被接收为空,换句话说 document.getElementById("Id").value;不返回任何东西 @user2596007 请提供整个 JSPage。【参考方案5】:需要注意的一点是,您可以用这种方式命名这些变量:
var MYAPP.javaScriptVar="<%out.print(javaString);%>";
该技术来自“Javascript: The Good Parts”一书。
【讨论】:
以上是关于将变量从 JSP 传递到 Javascript的主要内容,如果未能解决你的问题,请参考以下文章
我可以将变量从我的 javascript 传递到 jsp 文件吗?
我可以将变量从 JSP scriptlet 传递给 JSTL,但不能从 JSTL 传递给 JSP scriptlet 而不会出错