从同一个onclick调用两个函数

时间:2013-04-15 21:38:48

标签: javascript html onclick

HTML& JS

如何通过一个onclick事件调用2个函数? 这是我的代码

 <input id ="btn" type="button" value="click" onclick="pay() cls()"/>

这两个函数是pay()和cls()。 谢谢!

9 个答案:

答案 0 :(得分:172)

在函数调用结束时添加分号;,以使它们都能正常工作。

 <input id="btn" type="button" value="click" onclick="pay(); cls();"/>

我不相信最后一个是必需的但是嘿,不妨把它添加进去做好。

这是SitePoint http://reference.sitepoint.com/html/event-attributes/onclick

的一个很好的参考

答案 1 :(得分:30)

您可以创建一个调用这两个函数的函数,然后在事件中使用它。

function myFunction(){
    pay();
    cls();
}

然后,按钮:

<input id="btn" type="button" value="click" onclick="myFunction();"/>

答案 2 :(得分:15)

您可以从另一个函数

中调用这些函数
<input id ="btn" type="button" value="click" onclick="todo()"/>

function todo(){
pay(); cls();
}

答案 3 :(得分:9)

使用jQuery:

jQuery("#btn").on("click",function(event){
    event.preventDefault();
    pay();
    cls();
});

答案 4 :(得分:8)

不建议从html绑定事件。这是推荐的方式:

document.getElementById('btn').addEventListener('click', function(){
    pay();
    cls();
});

答案 5 :(得分:7)

只是提供一些变化,comma operator也可以使用,但有些人可能会说&#34; noooooo!&#34;,但它有效:

<input type="button" onclick="one(), two(), three(), four()"/>

http://jsbin.com/oqizir/1/edit

答案 6 :(得分:6)

onclick="pay(); cls();"

但是,如果你在“pay”函数中使用return语句,执行将停止并且“cls”将不会执行,

解决方法:

onclick="var temp = function1();function2(); return temp;"

答案 7 :(得分:5)

在两个函数之间加一个分号作为语句终止符。

答案 8 :(得分:4)

试试这个

<input id ="btn" type="button" value="click" onclick="pay();cls()"/>