一尘不染

内联Java导致javascript无法执行

jsp

我有一些JavaScript

<script>
    // some java code that doesn't matter right now

    localStorage.setItem("myName", "Bob");
    alert(localStorage.myName);
<script>

它工作得很好(发出警告消息说鲍勃)。很好,但我真正想要的是将java变量传递给javascript变量,然后将其打印出来。但是当我把这些线放进去…

var hi5 = <%= "getMyName();" %>
localStorage.someName = hi5;

它退出了。在此之前的任何JavaScript都可以正常工作。但之后的所有JavaScript都不会显示。

现在<% %>标签可能没有确切的语法,但实际上并没有给我任何错误

我确定我会忽略某些东西,但不确定会是什么。我能做什么?


阅读 241

收藏
2020-06-10

共1个答案

一尘不染

因为查看此行生成的页面的源代码

var hi5 = <%= "getMyName();" %>

它会渲染一些东西

var hi5 = BOB

您有可变的BOB吗?否。您缺少引号,而引号会使其成为字符串。

var hi5 = "<%= getMyName(); %>";
          ^                   ^^
2020-06-10