实时元素,绑定和触发器

时间:2010-12-16 18:53:09

标签: jquery-selectors jquery

我这里有这个代码:

$('#packageDateStopRenewalCheckedx').bind('check', function(){
    $(this).attr('checked', 'checked');
});
$('#packageStatus').live('change', function(){
    $('#packageDateStopRenewalCheckedx').trigger('check');
});

这两个元素都是实时的,所以我在第5行得到了这个错误:

$("#packageDateStopRenewalCheckedx") is null

我该如何解决这个问题?基本上我需要的是当select #packageStatus更改时,正在检查#packageDateStopRenewalCheckedx复选框。

任何帮助?

2 个答案:

答案 0 :(得分:0)

试试这个:

$('#packageDateStopRenewalCheckedx').bind('check', function(e){
    e.stopPropagation();
    $(this).attr('checked', 'checked');
});
$('#packageStatus').live('change', function(e){

    $('#packageDateStopRenewalCheckedx').trigger('check');
});

但是请发布你的HTML ..我看不到你的第一个函数是如何被触发两次的。 另外,为什么要使用'live'。从你的代码中看不到它?

答案 1 :(得分:0)

$('#packageDateStopRenewalCheckedx').bind('check', function(){
    $(this).attr('checked', 'checked');
});
$('#packageStatus').live('change', function(){
    $('#packageDateStopRenewalCheckedx').attr('checked', 'checked');
});