当前位置: 首页 > 知识库问答 >
问题:

将字符串传递给编写javascript的函数

方博
2023-03-14

我试图将字符串参数传递给JavaScript函数。出于某种原因,它只能获取整数。我在这里只放了字符串的语法,因为我知道这是个问题,因为它与int一起工作。

发送函数内的代码:

String counter = "hey";
out.println("<script>parent.update(\'' + counter + '\')</script>");
out.flush();

最终,我希望用计数器的值调用HTML页面上的以下函数,如上图所示:

 <script>
      function update(p) { alert(p); }
 </script>

正如我提到的,当我发送int时,javascript文件会发出警报,但当我发送字符串时不会做出反应。

共有1个答案

章兴发
2023-03-14

你们试图做的被称为“字符串插值”并在其他语言中使用——你们可以格式化字符串并自动将值插入其中。

您使用的代码没有做到这一点,因为您只将单个字符串传递给。println按原样打印。

您的选择

>

  • 使用串联构造字符串

    out.println("<script>parent.update('" +
       counter + 
       "')</script>");
    

    使用String.format如String变量插值Java

    out.println(String.Format("<script>parent.update('%s')</script>",
       counter));
    

    注意:如果您尝试传递给JavaScript函数的值可能包含引号(尤其是来自用户输入的引号),您需要先转义它。

  •  类似资料:
    • 问题内容: 我正在尝试通过使用JSON格式的字符串初始化Javascript变量来加载数据表。如果我声明: 那么我的表将正确加载该行。 我尝试在脚本之前初始化Java字符串,然后将该对象传递给Javascript变量,如下所示: 我的表无法识别这一点,并且在尝试以这种方式传递行时无法加载该行。如何正确地将Java字符串传递给Javascript,以便我的表能够加载数据? 问题答案: 尝试使用引号。

    • 有没有一个标准的方法来做这件事?我说得太离谱了吗? 谢谢你的帮助!

    • 这个网页让我相信我可以将一个空字符串传递给,以关闭图形的y记号。 但是,当我尝试这样做时,我得到以下错误: 怎么回事?如果这种关闭y型刻度的方法是不正确的,那么正确的方法是什么?

    • 我正在开发一个独立的应用程序,我正在尝试使用下面的代码将一个字符串传递给Spring控制器,该字符串是更改事件的输出 HTML代码 控制器代码 我在浏览器控制台中收到一个错误“加载资源失败:服务器响应状态为404()”。 帮助我将字符串“changed”传递给控制器。 我正在使用这些依赖关系 jQuery从"org.webjars", Spring-启动-启动器-执行器, spring-boot-

    • 问题 你要写一个扩展模块,需要将一个Python字符串传递给C的某个库函数,但是这个函数不知道该怎么处理Unicode。 解决方案 这里我们需要考虑很多的问题,但是最主要的问题是现存的C函数库并不理解Python的原生Unicode表示。 因此,你的挑战是将Python字符串转换为一个能被C理解的形式。 为了演示的目的,下面有两个C函数,用来操作字符串数据并输出它来调试和测试。 一个使用形式为 c

    • 问题内容: 我想将字符串数组作为参数传递给函数。请看下面的代码 代替: 但是如果我这样做,我会收到一条错误消息,指出将其转换为。我想知道是否可以传递这样的值,或者正确的方法是什么? 问题答案: 怎么样: