web-dev-qa-db-ja.com

送信ボタンjqueryのクリックイベントをキャプチャする

フォームの送信ボタンのクリックイベントを取得しようとしています...

<input type="submit" value="Search By Demographics" class="button" id="submitDemo"/>

それが、イベントを取得したいボタンです。

$('#submitDemo').click(
        alert("work darn it!!!!!!!!!!!!!!!!!!!!!!!!!")
        //$("#list").block({ message: '<img src="../../Images/ajax-loader.gif" />' })
    );

これがボタンのクリックでしたいことです。ロードしている画像をdivの周りに置き、後で別の関数でブロックを解除したい。現在、onClickではなくページが読み込まれると、オーバーレイがポップアップします。私は何をやっている

10
SoftwareSavant

これを試して

$('#submitDemo').live("click",function() {
  // your stuff
});

@ px5x2が指摘したように、ライブは非推奨であるため、ライブ使用の代わりにON

$('#submitDemo').on("click",function() {
  // your stuff
}); 
13
NullPoiиteя
$('#submitDemo').click(function() {
  // do your stuff
});
8
Chuck Callebs

DOMの準備が整ったらスクリプトを実行する必要があります。また、クリックメソッドへのコールバックを提供する必要があります。

$(function() {
    $('#submitDemo').click(function() {
        // do your stuff
    });
});
4
xandercoded

コードを関数に入れる必要があります。

$('#submitDemo').click(function(){
    alert("work darn it!!!!!!!!!!!!!!!!!!!!!!!!!")
    //$("#list").block({ message: '<img src="../../Images/ajax-loader.gif" />' })
});

しかし、onを使用してイベントをバインドし、イベントハンドラーが使用可能な場合は要素にイベントハンドラーをアタッチすることを常にお勧めします。

$('#submitDemo').on('click',function(){
    alert("work darn it!!!!!!!!!!!!!!!!!!!!!!!!!")
    //$("#list").block({ message: '<img src="../../Images/ajax-loader.gif" />' })
});
3
Sushanth --

フォームの場合は、フォーム上で送信ボタンをクリックしてバインドすることもできます。

$("#form_selector").submit(function{
// Do your stuff
})

ここで、「form_selector」は、送信ボタンがクリックされたフォームのIDです。

1
Paritosh Singh

コードにjqueryライブラリが含まれていない可能性があります!

src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
0
Bariock