因此,我基本上是在尝试使用Vanilla JS创建一个书签应用程序,该应用程序将输入的网站存储为书签,并且可以在按下删除图标时删除该书签。我正在尝试使用HTML中的onclick()将网站url值返回给delete函数。但是,当我单击删除图标
时,出现以下错误参数列表后未捕获到的SyntaxError:缺少)。
我不确定是什么问题。
BMtoDisp是一个数组,其中包含包含存储的网站的JSON对象。 siteName包含JSON文件中的网站名称 siteURL包含JSON文件中的网站URL dBM是在存储后显示书签的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/>';
}
答案 0 :(得分:0)
我在共享代码段中发现了2个问题:
代码段:
<!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>