2017-04-13 1 views
0

私はJavaScriptを使用して他のonclickイベントでのonclickイベントを交換しよう:新しいonClickイベントを追加する前にonClickをクリアするにはどうすればよいですか?

<button id='myButton' onClick=""/> 

OLD onClickイベント:

$('#myButton').click(function(){ 
    alert('1'); 
}); 

、その後、私はそのように同じことを行うとの値を変更アラート、私はこれが好きです:

$('#myButton').click(function(){ 
    alert('2'); 
}); 

上記の方法の結果は、1と2の警告表示が2回表示されます。 が表示する必要があるのは2です(警告( '1')を警告( '2')に置き換えます。 別のアラートを追加しません。私のコードを修正するには?

+0

アラートの内容を変更するだけでは... ...私はあなたの質問を理解できないと思っています....たぶんあなたはイベントをバインド解除するための何かを探しています...そして、 jQueryはhttp://api.jquery.com/unbind/の関連リンクです。 – NewToJS

+0

@NewToJS:$( '#myButton')を追加します。unbind();私は新しいonclickイベントを追加する前に?それがあなたの答えであるとすれば意味します。そして私はあなたの答えが私のためにうまくいっているという正しい答えとして受け入れます。ありがとうございます – Michael

答えて

0

最後に問題が解決されました。私はこの方法を使用し、ここからの説明のようにバインド解除:

http://api.jquery.com/unbind/ 

私の場合のために:

$('#myButton').unbind("click"); 

ありがとうございました。

2

この方法を試してください。

$(document).off('click', '#myButton').on('click', '#myButton', function(){ 
    alert('2'); 
}); 

これは、以前のイベントリスナーをバインド解除し、新しいものを追加します。

+0

私は$( '#myButton')を使用するとどうですか?unbind(); ?どちらがバインドを解除するより良い方法ですか? – Michael

0

同じ要素をリスンする2つのjQueryイベントリスナーがあります。彼らは要素のIDについて知っており、これは彼らが働くには十分です。

私は、彼らがおよそ onClick

次の2つのJS関数をコーディングする必要があります気にしないことを、言っしようとしている何

はなく、jQueryのイベントリスナー。

<button id='id' onClick="choose function"/> 

function myFunction1() { 
    //your code 
} 

function myFunction2() { 
    //same 
} 
関連する問題