已解决:阅读下面的编辑
首先,我创建一个这样的字符串:
var child_id = "childId"+this.id;
alert(child_id);
警报显示正确的字符串。 this.id是一个字符串,我也创建了一个临时变量,并将它再次放入一个字符串(var tmp_child_id = child_id.toString()),以确保它是一个字符串。
在此之后我将此字符串赋予函数goToNextNode,并带有如下的href链接:
this.svgImageDiv.innerHTML = '<a href="javascript:goToNextNode('+child_id+')"><img src="img/transparent.png"/></a>
在函数goToNextNode中我首先触发一个警报,它不显示上面提醒的字符串,它说“[Object HTMLDivElement]”。
function goToNextNode(childId){
alert(childId);
}
我的字符串发生了什么以及如何正确传输字符串?
编辑: 解决了: 当我做var child_id = this.id;而不是var child_id =“childId”+ this.id;并将“childId”字符串放入函数goToNextNode()中的id,一切正常。不要问我为什么它会像这样,我不明白......
结束编辑
答案 0 :(得分:0)
你忘了括号内参数的引号:
this.svgImageDiv.innerHTML = '<a href="javascript:goToNextNode(`'+child_id+'`)"><img src="img/transparent.png"/></a>';