javascript - 使用 javascript 编写 HTML 脚本时出现语法错误

标签 javascript html

我有以下尝试动态插入 HTML 代码的 javascript 代码。我有一个语法错误,但我不知道如何更正它。请问有人可以建议吗?

 loadNextContainer.innerHTML = '<span class="sr_43" id="srloadnext_2" onclick="srt.loadNextMatchRecords(\''+numDownloadSoFar+'\', \''+maxDownloadLimit+'\', \''+folderName+'\', \''+jsonHashTags+'\', \''+fromDate+'\', \''+toDate+'\', \''+lastScanId+'\')">LoadNext</span>';

错误信息:

 Uncaught SyntaxError: Invalid or unexpected token

我相信错误围绕着函数变量。特别是 JSON 变量。我无法更改 JSON 中每个元素的双引号使用。所以这必须保留在任何解决方案中。

enter image description here

最佳答案

您可以像这样使用反引号来尝试。

loadNextContainer.innerHTML = `<span class="sr_43" id="srloadnext_2" onclick="srt.loadNextMatchRecords('`+numDownloadSoFar+`', '`+maxDownloadLimit+`', '`+folderName+`', '`+jsonHashTags+`', '`+fromDate+`', '`+toDate+`', '`+lastScanId+`')">LoadNext</span>';

或者只是转义双引号而不是单引号。你这样做的方式是,当你试图转义它时,你无意中打开了字符串。

loadNextContainer.innerHTML = "<span class=\"sr_43\" id=\"srloadnext_2\" onclick=\"srt.loadNextMatchRecords('"+numDownloadSoFar+"', '"+maxDownloadLimit+"', '"+folderName+"', '"+jsonHashTags+"', '"+fromDate+"', '"+toDate+"', '"+lastScanId+"')\">LoadNext</span>";

关于javascript - 使用 javascript 编写 HTML 脚本时出现语法错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51804446/

相关文章:

javascript - Angular 服务中的单元测试 $q promise - Karma、Jasmine

javascript - angularjs 和 localStorage 更改事件

html - 当内部元素 float 时,包含框的大小不会改变

html - 为什么在使用 <a href> 标签时我的段落中有空格?

html - Flexbox 100% 高度问题

html - 试图在 twitter bootstrap 2.3.2 行/跨度中对齐三个图像

javascript - jquery 函数损坏 - 不更新 onchange

javascript - Emberjs不会加载jquery/javascript,在页面中插入html时运行代码

javascript - 一些 jquery 插件不适用于新版本的 jquery 库

html - 图像悬停的猫头鹰轮播 div 高度