LoginSignup
1
1

More than 5 years have passed since last update.

jqueryイベント付与の順番

Last updated at Posted at 2015-10-17

DOMの読み込みとイベント付与の順番について

以前、とあるテキストボックスにblurイベントを付与しようとした際、動かなくて
ハマったので。

$(function(){
    $('#hogehoge').blur(function(){
        if($('#txthoge').val() == ''){
            alert('空欄です');
            return;
        };
    });
});

みたいな物を入れていたのですが
肝心なtxthogeのフォーカスアウトで動かないと…

実はこのtxthogeというテキストボックスは
とある処理の後に作成したものなんですね。

function CreatHoge(){
    var Html = '';
    Html = '< input type = "text" id = "txthoge" >'
    $('#btnhoge').append(Html)
};

っで肝心のblurの処理自体はload時に読み込んでいるのですが
この段階でtxthogeが存在してないのでイベント付与出来なかったんですよね。

この場合、txthogeを入れた後にblur処理を入れると解決します。

function CreatHoge(){
//txthoge追加
    var Html = '';
    Html = '< input type = "text" id = "txthoge" >'
    $('#btnhoge').append(Html)

\\blur処理
    $('#hogehoge').blur(function(){
        if($('#txthoge').val() == ''){
            alert('空欄です');
            return;
        };
    });
};

こうしてやるとtxthogeのDOMが生成された後に
イベント付与という流れなので動きます。

新人プログラマーからでした。

1
1
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1