141

HTML & JS

1 つの onclick イベントから 2 つの関数を呼び出すにはどうすればよいですか? これが私のコードです

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

2 つの関数は、pay() と cls() です。ありがとう!

4

9 に答える 9

257

;両方が機能するように、関数呼び出しの最後にセミコロンを追加します。

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

最後のものが必要だとは思いませんが、まあ、それを追加したほうがいいかもしれません。

これはSitePoint http://reference.sitepoint.com/html/event-attributes/onclickからの良いリファレンスです

于 2013-04-15T21:41:26.517 に答える
50

これらの両方を呼び出す単一の関数を作成して、イベントで使用できます。

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

次に、ボタンの場合:

<input id="btn" type="button" value="click" onclick="myFunction();"/>
于 2013-04-15T21:41:04.040 に答える
21

別の関数内から関数を呼び出すことができます

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

function todo(){
pay(); cls();
}
于 2013-04-15T21:40:20.683 に答える
14
onclick="pay(); cls();"

ただし、「pay」関数でreturnステートメントを使用している場合、実行は停止し、「cls」は実行されません。

これに対する回避策:

onclick="var temp = function1();function2(); return temp;"
于 2013-04-15T21:47:59.980 に答える
12

html からイベントをバインドすることはお勧めしません。これは推奨される方法です:

document.getElementById('btn').addEventListener('click', function(){
    pay();
    cls();
});
于 2014-07-12T18:07:44.000 に答える
10

jQuery の場合:

jQuery("#btn").on("click",function(event){
    event.preventDefault();
    pay();
    cls();
});
于 2013-04-15T21:42:20.573 に答える
10

いくつかのバリエーションを提供するために、コンマ演算子も使用できますが、「noooooo!」と言う人もいますが、機能します:

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

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

于 2013-04-15T21:47:01.347 に答える
6

これを試して

<input id ="btn" type="button" value="click" onclick="pay();cls()"/>
于 2013-04-15T21:42:06.127 に答える