gpt4 book ai didi

javascript - 我如何解决问题: Uncaught SyntaxError: missing ) after argument list

转载 作者:行者123 更新时间:2023-11-28 14:17:03 24 4
gpt4 key购买 nike

所以我基本上是在尝试使用 vanilla JS 制作一个书签应用程序,它存储作为书签输入的网站,并且可以在按下删除图标时删除书签。我正在尝试使用 HTML 中的 onclick() 将站点 url 值返回到删除函数。但是,当我单击删除图标时出现以下错误

Uncaught SyntaxError: missing ) after argument list.

我不确定是什么问题。

BMtoDisp 是保存 JSON 对象的数组,其中包含存储的网站。siteName 包含来自 JSON 文件的网站名称siteURL 包含来自 JSON 文件的站点 URLdBM 是存储后显示书签的div。delBM() 是我要返回 siteURL 并在单击垃圾桶 (fontawesome) 图标时执行删除操作的函数。

for(var i = 0; i < BMtoDisp.length; i++)
{
var siteName = BMtoDisp[i].sname;
var siteURL = BMtoDisp[i].surl;
dBM.innerHTML +="<div id='newElement'>" + '<h2>' + siteName + '</h2>' + '<a target="_blank" href=" '+siteURL+'">' + siteURL + '</a>' + '<a onclick="delBM('+siteURL+')"><i class="fas fa-trash-alt"></i><a/>';
}

最佳答案

我在共享代码片段中发现了 2 个问题:

  1. 正如@NewToJS 提到的——添加单引号来包裹你想在函数调用中传递的值
  2. div 结束标记丢失

代码片段:

<!DOCTYPE html>
<html>
<body>

<div id="id01"></div>

<script>
function delBM(url){
console.log(url);
}

var BMtoDisp = [];
BMtoDisp.push({sname: 'Ayon', surl: 'https://google.com'});
BMtoDisp.push({sname: 'Alfaz', surl: 'https://yahoo.com'});

var dBM = document.getElementById("id01");

for(var i = 0; i < BMtoDisp.length; i++)
{
var siteName = BMtoDisp[i].sname;
var siteURL = BMtoDisp[i].surl;
dBM.innerHTML +='<div id="newElement'+ i +'"><h2>' + siteName + '</h2><a target="_blank" href="'+siteURL+'">' + siteURL + '</a><a onclick="delBM(\''+siteURL+'\')">delete me<a/></div>';
}
</script>

</body>
</html>

关于javascript - 我如何解决问题: Uncaught SyntaxError: missing ) after argument list,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55780633/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com