javascript - jQuery 字符串连接 '+' 错误

标签 javascript jquery string-concatenation string-interpolation

我有一个 jQuery 语句

 $('.searchDisplay').append('<i class="ion-email" onclick="copyEmail('+data[i].email+')"></i>' );

在这里,如果我单击此图标,则会调用此函数 copyEmail(),它将字符串作为参数并将其添加到剪贴板。

但是当我点击图标时,我的控制台出现错误

Uncaught SyntaxError: Invalid or unexpected token

然后我尝试这样做

$('.searchDisplay').append('<i class="ion-email" onclick="copyEmail("'+data[i].email+'")"></i>' );

我遇到了这个错误

Uncaught SyntaxError: Unexpected token }

问题是我无法在函数中传递字符串。

有人可以帮我解决这个问题吗?

最佳答案

 $('.searchDisplay').append('<i class="ion-email" onclick="copyEmail(\''+data[i].email+'\')"></i>' );

您的代码中的问题是...

当您使用字符串作为参数调用函数时,您执行 someFunction('somestring');,在您的代码中您缺少 '' 包装字符串。

所以你需要用'..'包裹data[i].email。我用 '' 包装了 data[i].email 但因为已经有一对所以我不得不用 \ 转义它。

关于javascript - jQuery 字符串连接 '+' 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49094024/

相关文章:

c - 在 C 中将一个字符串附加到另一个字符串

javascript - 如何将 PHP MySQL 与 NodeJS 和 SocketIO 结合使用

javascript - 如何通过倒计时器填充表格单元格

javascript - 从 Javascript 输出 html

javascript - Codeigniter 中的 JQuery Ajax POST 不起作用

javascript - 禁用滚动条和鼠标滚轮但不禁用滚动条

jquery - 更改 future 实例的 CSS

具有单个输入字段的表单的 jQuery 提交处理程序不会在 IE 上触发

python - 在 Python 3 中使用字符串格式而不是字符串连接是否更 Pythonic?

python - 连接文本中的单个字符