javascript - 如何在字符串中传递字符串?

标签 javascript html

我有一个 javascript playAudio() 函数,它需要一个字符串参数。我似乎无法弄清楚如何在不破坏字符串的情况下将字符串值作为该函数的参数传递。

htmlString = "<button class='button-icon' value='PLAY' onclick='playAudio()'></button>";

我想传递字符串“SP00005”作为参数。但是,我无法使用引号或撇号,因为它们已经用于我的 htmlString 的更外部部分。

我什至尝试将 htmlString 的形成分解为各个步骤,如下所示:

htmlString = "";
htmlString += "<button class='button-icon' value='PLAY' onclick='playAudio(";
htmlString += "SP00005";
htmlString += ")'></button>";

所以我的问题是:如何在本身位于字符串中的字符串中传递字符串?

最佳答案

一种方法是转义 "

htmlString = "<button class='button-icon' value='PLAY' onclick='playAudio(\"foo\")'></button>";

更好的选择是使用 javascript 选择按钮,添加事件监听器并且不用担心内联 js

<button id="fooBtn" class='button-icon' value='PLAY'></button>

js:

document.getElementById('fooBtn').addEventListener('click', function() {
    playAudio("SP00005");
});

关于javascript - 如何在字符串中传递字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40813363/

相关文章:

javascript - 如何在映射数组之前等待设置为状态?

javascript - 陷入 Javascript 无限 while 循环

javascript - passportjs LocalStrategy 是否允许比默认用户名和密码更多的参数?

javascript - JS改变部分段落的文字颜色

javascript - 为什么不溢出滚动我的表格单元格的内容?

javascript - jQuery:我的下拉菜单的 getPos

php - 调用css、js文件的最佳方式?

javascript - 使用循环运行 Gulp 任务

javascript - 使用 Truffle 测试合约的简单问题

javascript - 动态添加元素时,使用 jQuery 为 CSS 类注册事件处理程序不起作用