我不确定是什么问题。
cell1.innerHTML = '<a onclick="displaySteps(\'' + temp + '\')" id="testSteps"><i class="fa fa-plus-circle fa-custom fa-clickable"></i></a>' + " N/A";
执行以上行总是会给我以下错误
SyntaxError: missing ) after argument list[Learn More]
答案 0 :(得分:2)
由于您拥有missing ) after argument list error
,并且上面代码中唯一的函数调用是displaySteps
,因此我认为test
变量的呈现值中有某些原因。尝试记录test
的值,以确保它不包含任何杂散的)
或未转义的字符
此外,更干净的方法是使用Template Literals
-
const icon = `<i class="fa fa-plus-circle fa-custom fa-clickable"></i>`
const renderDisplayFn = (arg) => `'displaySteps(${arg})'`
cell1.innerHTML = `<a onclick=${renderDisplayFn(test)} id='testSteps'>${icon}</a> N/A`
答案 1 :(得分:1)
cell1.innerHTML = `<a onclick="displaySteps('${temp}')" id="testSteps"><i class="fa fa-plus-circle fa-custom fa-clickable"></i></a> N/A`;
答案 2 :(得分:1)
temp
中可能有一个引号,导致函数调用中出现语法错误。
与其创建onclick
属性,不如使用代码添加事件侦听器,会更安全。
cell1.innerHTML = '<a o id="testSteps"><i class="fa fa-plus-circle fa-custom fa-clickable"></i></a>' + " N/A";
document.getElementById("testSteps").addEventListener("click", (function(temp) {
displaySteps(temp);
})(temp));