2012-04-09 20 views
1

ボタンのonclickメソッドを動的に変更するにはどうすればよいですか?私は2つの方法で、1つの方法の成功を持っている動的にonclickメソッドを変更する

は、私はあなたがjQueryのを使用しているので、1つのボタン

+0

HTMLとjQueryを記載してください。 – iambriansreed

答えて

3

の成功にシフトするよう..just他の方法を設定したい、あなたは$.on$.offが結合してアンバインドするために使用しますイベント。あなたはそのハンドラを削除して、このように別のものを追加することができ

$("#foo").on("click", function(e) { 
    // event handler 
}); 

:あなたはこのようなあなたのハンドラを添付していた場合

$("#foo") 
    .off("click") 
    .on("click", function(e){ 
    // new event handler 
    }); 

それは$.on$.offが好ましい方法であることに注意することが重要ですjQuery 1.7の時点で使用します。これらのメソッドの詳細については、the documentationと同様にthe blog postを参照してください。

0

jQuery 1.7以降、.on()メソッドは、イベントハンドラをドキュメントに添付するのに適したメソッドです。

0

はあなたのボタンidを付け、そして第一の方法の内側に、行を追加します。

getElementById("THE_ID_OF_THE_BUTTON").onclick = theOtherMethod; 
0
<input id="btn" type="button" onclick="success();" value="click me!" /> 
<script> 
    var btn = document.getElementById('btn'); 
    function success(){ 
     alert('something'); 
     btn.onclick = otherFunction; 
    } 

    function otherFunction(){ 
     alert('Something new'); 
     // Now when you clik btn this code is going to be executed 
     btn.onclick = success; 
    } 

</script> 
関連する問題