首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >我可以在一个元素中有两个JavaScript onclick事件吗?

我可以在一个元素中有两个JavaScript onclick事件吗?
EN

Stack Overflow用户
提问于 2010-05-21 18:34:41
回答 5查看 160.8K关注 0票数 30

我们可以将两个JavaScript onclick事件放在一个输入类型的按钮标记中吗?调用两个不同的函数?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2010-05-21 18:40:23

这个可以用:

<input type="button" value="test" onclick="alert('hey'); alert('ho');" />

这个也是:

代码语言:javascript
复制
function Hey()
{
    alert('hey');
}

function Ho()
{
    alert('ho');
}

代码语言:javascript
复制
<input type="button" value="test" onclick="Hey(); Ho();" />

所以答案是-是的,你可以:)但是,我建议使用不显眼的JavaScript。把js和HTML混在一起实在是太糟糕了。

票数 38
EN

Stack Overflow用户

发布于 2010-05-21 19:04:39

HTML

代码语言:javascript
复制
<a href="#" id="btn">click</a>

和javascript

代码语言:javascript
复制
// get a cross-browser function for adding events, place this in [global] or somewhere you can access it
var on = (function(){
    if (window.addEventListener) {
        return function(target, type, listener){
            target.addEventListener(type, listener, false);
        };
    }
    else {
        return function(object, sEvent, fpNotify){
            object.attachEvent("on" + sEvent, fpNotify);
        };
    }
}());

// find the element
var el = document.getElementById("btn");

// add the first listener
on(el, "click", function(){
    alert("foo");
});

// add the second listener
on(el, "click", function(){
    alert("bar");
});

这将提醒'foo‘和'bar’时,点击。

票数 17
EN

Stack Overflow用户

发布于 2010-05-21 18:39:49

您可以附加一个处理程序,该处理程序可以调用任意多的其他处理程序:

代码语言:javascript
复制
<a href="#blah" id="myLink"/>

<script type="text/javascript">

function myOtherFunction() {
//do stuff...
}

document.getElementById( 'myLink' ).onclick = function() {
   //do stuff...
   myOtherFunction();
};

</script>
票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2881307

复制
相关文章

相似问题

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