这是我的代码
var baseurl = "https://localhost:8888/files/";
var mydiv = document.getElementById("myDiv");
var aTag = document.createElement('a');
aTag.setAttribute('href',"#");
aTag.setAttribute('onclick',"getFolderList(" + baseurl + ")");
aTag.innerHTML = "Home /";
mydiv.appendChild(aTag);
此处,getFolderList是接受一个参数的JavaScript函数。我使用了上面的代码,但是没有调用该函数。如何将“ baseurl”值传递给getFolderList函数?
最佳答案
您忘记了引号:
aTag.setAttribute('onclick',"getFolderList('" + baseurl + "')");
^ ^
编写方式,引擎会将
https://localhost:8888/files/
作为变量名,这当然会导致语法错误。最后,您应该避免在HTML属性中编写这样的代码-如果
baseurl
来自外部资源,则可能导致脚本注入攻击。请改用事件侦听器语法:aTag.addEventListener("click", function() {
getFolderList(baseurl);
});