【问题标题】:How do I use java variable inside javascript function on JSP page [duplicate]如何在JSP页面上的javascript函数中使用java变量[重复]
【发布时间】:2016-06-04 10:17:19
【问题描述】:

我写了一个JSP页面:

<%
int var1 = 10;
int var2 = 20;
%>

<script>
function draw(){
var data = new google.visualization.DataTable();
data.addColumn('string', 'Category');    
              data.addColumn('number', 'Number');
              data.addRows([
                ['cat1', <%= var1 %>], ['cat2', <%= var2 %>]]);
}
</script>

当我在 javascript 函数中使用这些变量时会出错

var1 无法解析为变量

var2 无法解析为变量

【问题讨论】:

    标签: javascript java jsp


    【解决方案1】:

    只需使用以下引号:

    data.addRows([['cat1', "<%= var1 %>"], ['cat2', "<%= var2 %>"]]);
    

    单引号也可以:

    data.addRows([['cat1', '<%= var1 %>'], ['cat2', '<%= var2 %>']]);
    

    【讨论】:

      【解决方案2】:

      你的变量可以这样显示:

      "<%=var1%>"
      

      不鼓励使用 Scriptlet。话虽如此,您可以使用推荐的方法,例如 jstl。见下文:

      <c:set name="var1" value="10" />    
      <c:set name="var2" value="20" />
      

      分配他们:

        var value1 = "${var1}";
        var value2 = "${var2}";
      

      在你的函数中使用它们:

       data.addRows([['cat1', "${var1}"], ['cat2', "${var2}"]]);
      

      下面链接中的文章讨论了 JSTL 与 Scriplets 的比较:

      Comparing JSTL and JSP Scriptlet Programming

      【讨论】:

        猜你喜欢
        • 2015-11-17
        • 2015-05-02
        • 2014-06-06
        • 1970-01-01
        • 2012-10-03
        • 2011-08-08
        • 1970-01-01
        • 2019-04-08
        • 2012-08-01
        相关资源
        最近更新 更多