首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在onclick函数中传递字符串参数

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

Stack Overflow用户
提问于 2012-03-10 10:05:49
回答 23查看 1.1M关注 0票数 275

我想要向Onclick函数传递一个参数(即一个字符串)。

目前,我这样做:

代码语言:javascript
复制
'<input type="button" onClick="gotoNode(' + result.name + ')" />'

其中result.name例如等于字符串"Add“。

当我点击这个按钮时,我得到了一个错误提示:"Add is not defined“。由于此函数调用可以很好地处理数字参数,因此我假设它与字符串中的符号"“有关。

我如何解决这个问题?

EN

回答 23

Stack Overflow用户

回答已采纳

发布于 2012-03-10 10:41:22

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

代码语言:javascript
复制
'<input type="button" onClick="gotoNode(\'' + result.name + '\')" />'

不过,您真的应该使用适当的DOM方法来完成这项工作。

代码语言:javascript
复制
var inputElement = document.createElement('input');
inputElement.type = "button"
inputElement.addEventListener('click', function(){
    gotoNode(result.name);
});

​document.body.appendChild(inputElement);​

请注意,如果这是一个循环或其他东西,result将在事件触发之前更改,您需要创建一个额外的作用域气泡来隐藏更改的变量。

票数 415
EN

Stack Overflow用户

发布于 2016-07-28 17:38:36

下面的方法将会有一个一跳点击-带控件的处理程序方法和处理程序方法,基于事件对象,可以演绎出点击事件和相应的对象。

它还提供了一种更清晰的方法来添加更多参数,并具有更大的灵活性。

代码语言:javascript
复制
<button type="button"
        className="btn btn-default"
        onClick="invoke"
        name='gotoNode'
        data-arg1='1234'>GotoNode</button>

在JavaScript层中:

代码语言:javascript
复制
  invoke = (event) => {
    let nameOfFunction = this[event.target.name];
    let arg1 = event.target.getAttribute('data-arg1');
    // We can add more arguments as needed...
    window[nameOfFunction](arg1)
    // Hope the function is in the window.
    // Else the respective object need to be used
    })
  }

这里的优点是我们可以有尽可能多的参数(在上面的例子中,data-arg1,data-arg2等)。根据需要。

票数 50
EN

Stack Overflow用户

发布于 2012-03-10 10:12:36

我建议甚至不要使用HTML处理程序,而要使用更常见的东西,比如document.getElementById

HTML:

代码语言:javascript
复制
<input type="button" id="nodeGoto" />

JavaScript:

代码语言:javascript
复制
document.getElementById("nodeGoto").addEventListener("click", function() {
    gotoNode(result.name);
}, false);
票数 29
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9643311

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档