可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
This question already has an answer here:
-
How to call multiple JavaScript functions in onclick event?
9 answers
HTML & JS
How do I call 2 functions from one onclick event?
Here's my code
<input id ="btn" type="button" value="click" onclick="pay() cls()"/>
the two functions being pay() and cls().
Thanks!
回答1:
Add semi-colons ;
to the end of the function calls in order for them both to work.
<input id="btn" type="button" value="click" onclick="pay(); cls();"/>
I don't believe the last one is required but hey, might as well add it in for good measure.
Here is a good reference from SitePoint http://reference.sitepoint.com/html/event-attributes/onclick
回答2:
You can create a single function that calls both of those, and then use it in the event.
function myFunction(){
pay();
cls();
}
And then, for the button:
<input id="btn" type="button" value="click" onclick="myFunction();"/>
回答3:
You can call the functions from inside another function
<input id ="btn" type="button" value="click" onclick="todo()"/>
function todo(){
pay(); cls();
}
回答4:
Binding events from html is NOT recommended. This is recommended way:
document.getElementById('btn').addEventListener('click', function(){
pay();
cls();
});
回答5:
With jQuery :
jQuery("#btn").on("click",function(event){
event.preventDefault();
pay();
cls();
});
回答6:
Just to offer some variety, the comma operator can be used too but some might say "noooooo!", but it works:
<input type="button" onclick="one(), two(), three(), four()"/>
http://jsbin.com/oqizir/1/edit
回答7:
onclick="pay(); cls();"
however, if you're using a return statement in "pay" function the execution will stop and "cls" won't execute,
a workaround to this:
onclick="var temp = function1();function2(); return temp;"
回答8:
put a semicolon between the two functions as statement terminator.
回答9:
Try this
<input id ="btn" type="button" value="click" onclick="pay();cls()"/>