jQueryを使って他の要素のイベントハンドラをトリガする方法
jQueryには、要素にアタッチされたイベントハンドラを実行する
trigger()
関数が付属しています。例えば、
シングルクリックイベントは、 “button1″のIDを持つボタンにバインドされます。
$("#button1").bind("click", (function () { alert("Button 1 is clicked!"); }));
シングルクリックイベントは、 “button2″のIDを持つボタンにバインドされます。ボタン1クリックイベントハンドラを実行するためのトリガ。
$("#button2").bind("click", (function () { alert("Button 2 is clicked!"); $("#button1").trigger("click"); }));
button2をクリックすると、「
ボタン2をクリック!
」という警告メッセージが表示され、button1の警告メッセージ「
ボタン1をクリック!
」が表示されます。
自分で試してみてください
<html> <head> <script type="text/javascript" src="jquery-1.4.2.min.js"></script> </head> <body> <h1>jQuery trigger() example</h1> <script type="text/javascript"> $(document).ready(function(){ $("#button1").bind("click", (function () { alert("Button 1 is clicked!"); })); $("#button2").bind("click", (function () { alert("Button 2 is clicked!"); $("#button1").trigger("click"); })); }); </script> </head><body> <input type='button' value='Button 1' id='button1'> <input type='button' value='Button 2' id='button2'> </body> </html>