在onclick函数中传递字符串参数

我想将参数(即字符串)传递给Onclick函数。目前,我这样做:

'<input type="button" onClick="gotoNode(' + result.name + ')" />'

例如,result.name等于字符串“

Add”。当我单击此按钮时,出现一个错误,提示未定义添加。由于此函数调用可以完美地与数字参数一起使用,因此我认为它与字符串中的符号“”有关。以前有人遇到过这个问题吗?

回答:

看起来您是从字符串构建DOM元素。您只需要在result.name周围添加一些引号即可:

'<input type="button" onClick="gotoNode(\'' + result.name + '\')" />'

您实际上应该使用适当的DOM方法来执行此操作。

var inputElement = document.createElement('input');

inputElement.type = "button"

inputElement.addEventListener('click', function(){

gotoNode(result.name);

});

​document.body.appendChild(inputElement);​

请注意,如果这是一个循环之类的东西,result它将在事件触发前发生变化,您需要创建一个额外的作用域气泡以遮盖变化的变量。

以上是 在onclick函数中传递字符串参数 的全部内容, 来源链接: utcz.com/qa/427048.html

回到顶部