java - 内联 java 导致 javascript 不执行

标签 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 都不会显示。

现在是<% %>标签可能不符合确切的语法,但它并没有真正给我任何错误

我确信我忽略了一些东西,但我不确定它会是什么。我能做什么?

最佳答案

因为看这行生成的页面的源码

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

它会渲染这样的东西

var hi5 = BOB

你有变量BOB吗?不。您缺少使其成为字符串的引号。

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

关于java - 内联 java 导致 javascript 不执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21022459/

相关文章:

java - 是否有与 getchar 等效的 Java?

java - netty在多个netty服务器之间共享 channel

javascript - 尝试并捕获 promise

javascript - 如果用户在聊天机器人外部单击,如何添加触发关闭聊天机器人?

java - 将 JSTL 包含到 Maven 项目中

java - 为什么我的方法返回无穷大?

java - Java 中最好的可调整大小的循环字节缓冲区是什么?

javascript 初学者 - 如何获取 div 或其他 html 节点的类

java - 在jsp中获取当前页面的apache tiles

java - 将数据从 JSP 传递到 Servlet,在 Servlet 中返回 null