0

JavaScript関数を呼び出すjQueryでボタンを作成しようとしましたが、問題が発生しました:

  1. ページがロードされた後、初めて mybutton をクリックしても反応がありません
  2. 2 回目のクリックで関数が 2 回実行されます
  3. 3 回目のクリックで 3 つ以上の機能が実行されます

私のコードがさらに多く実行されるのはなぜですか? 「 1クリック1実行のJavaScript関数」が欲しいだけですこのような私のコード

<script type="text/javascript" language="javascript">

function showcase(){
    var foo = function () {
         alert('tutup');
    };
    $('#create-new').on('click',foo);
    return false;
}</script> <button class="button" id="create-new"onclick="return showcase();">show text</button>

この問題を助けてください

ここで私の完全なエラーコードを試してくださいhttp://jsbin.com/ovucer/1/edit

4

5 に答える 5

3

要素に複数のクリック イベント リスナーを登録しています

ボタンをクリックするたびに、showcaseメソッドを使用して新しいクリック ハンドラーをボタンに追加しますが、これは必要ありません。

<button class="button" id="create-new">show text</button>
<script type="text/javascript" language="javascript">
    var foo = function () {
         alert('tutup');
    };
    $('#create-new').on('click',foo);
</script>
于 2013-07-23T09:30:28.927 に答える
1

onclickにonclick関数を登録していますが、

これを使って:

$('#create-new').on('click', function(){ alert('text button'); return false; });
于 2013-07-23T09:31:14.807 に答える
1

クリック イベントを 2 回バインドしています。jQueryを使用onclickして、HTML で何度も使用し.on()ます。

あなたの人生を楽にするために、そしてすでにjQueryを使用しているので、ドキュメントの準備ができたイベントでそれを行ってください:

var foo = function () {
  alert('text button');

  return false;
};

$(function () {
  $('#create-new').on('click',foo);
});

を削除して、HTML ビットを修正しますonclick

<button class="button" id="create-new">show text</button>
于 2013-07-23T09:32:07.317 に答える
0

スクリプトタグでこれを試してthe onclick event、ボタンで削除してください:

var foo = function () {
    alert('tutup');
};
$('#create-new').on('click',foo);
return false;
于 2013-07-23T09:32:17.453 に答える