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

我可以在一个元素中包含两个JavaScript onclick事件吗?,javascript,Javascript,我们可以将两个JavaScript onclick事件放在一个输入类型按钮标记中吗?要调用两个不同的函数?一个元素中不需要有两个函数,只需要一个函数调用另外两个 HTML 您可以附加一个处理程序,该处理程序可以调用任意多个其他处理程序: <a href="#blah" id="myLink"/> <script type="text/javascript"> function myOtherFunction() { //do stuff... } document.

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

一个元素中不需要有两个函数,只需要一个函数调用另外两个

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

<a href="#blah" id="myLink"/>

<script type="text/javascript">

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

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

</script>

函数myOtherFunction(){
//做些事情。。。
}
document.getElementById('myLink')。onclick=function(){
//做些事情。。。
myOtherFunction();
};
这一款有效:

还有这个:

function Hey()
{
    alert('hey');
}

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


所以答案是——是的,你可以:)
但是,我建议使用不引人注目的JavaScript。。将js与HTML混合在一起是很讨厌的。

您也可以尝试类似的方法

<a href="#" onclick="one(); two();" >click</a>

<script type="text/javascript">
    function one(){
        alert('test');
    }

    function two(){
        alert('test2');
    }
</script>

功能一(){
警报(“测试”);
}
函数二(){
警报(“test2”);
}
HTML

<a href="#" id="btn">click</a>

单击时,这将同时提醒“foo”和“bar”。

此方法的缺点是此处的上下文将是全局窗口对象,“This”在myOther中不起作用。。。。声明,这只是引用函数,而不是将其附加到元素的onclick属性,值得对此进行解释。:)除此之外,答案适用于“调用2个函数或200”的情况。
<input type="button" value="test" onclick="Hey(); Ho();" />
<a href="#" onclick="one(); two();" >click</a>

<script type="text/javascript">
    function one(){
        alert('test');
    }

    function two(){
        alert('test2');
    }
</script>
<a href="#" id="btn">click</a>
// 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");
});