有没有jQuery的live()函数的变种不绑定到事件?

时间:2011-01-27 18:53:32

标签: jquery

是否有jQuery的live()函数的变种不绑定到事件?

例如,我想做这样的事情:

$('.jdate').live(function() {
    var datebox = $(this);
    datebox.datepicker();
    //do a couple more things 
}

所以表单中的所有'.jdate'字段以及稍后通过ajax添加的字段都被视为相同。

3 个答案:

答案 0 :(得分:4)

为此目的检查jQuery livequery plugin what is this

答案 1 :(得分:1)

您可以使用如下的实时自定义事件解决此问题:

$('.jdate').live('customEvent', function() {
    var datebox = $(this);
    datebox.datepicker();
    //do a couple more things 
});
$(function(){
    $('.jdate').trigger('customEvent');
});

答案 2 :(得分:1)

虽然@jAndy(或者我应该说 @jAndy )提到的livequery插件可行,但我认为这是最后的手段,因为它需要的开销。

如果要向DOM添加新元素,则只需在添加新元素时调用插件即可。

$.ajax({
    url:'/some/path/',
    success:function(resp) {
        var $resp = $( resp );
        $resp.find('.jdate').datepicker();
        $resp.appendTo('#myform');
    }
});