代码之家  ›  专栏  ›  技术社区  ›  Edan Maor

让绝地武士在新元素上工作(.live)

  •  6
  • Edan Maor  · 技术社区  · 14 年前

    我有一个“setup”函数,它调用 .editable() 所有相关课程。问题是,我有新的附加元素,我想使其也可编辑。很明显,新加入的, .editable()) 从来没人叫过他们。

    live() 函数可以,但对于 editable()

    我现在的解决办法对我来说有点难看( redscribe_button

    $(".redescribe_button").live("click", function(click_event) {
        click_event.preventDefault();
    
        $(".editable", $(this).parent().parent()).editable("/temp/", {
            event: "make_editable",
            indicator : 'Saving...',
            tooltip   : 'Click to edit...'
        });
    
        $(".editable", $(this).parent().parent()).trigger('make_editable');
    });
    

    换句话说,我只是在打电话。每次单击编辑按钮时都可以编辑。

    2 回复  |  直到 14 年前
        1
  •  3
  •   Nathan MacInnes    14 年前

    在一个元素上多次调用editable没有副作用,对吗?所以为什么不在每次有变化的时候重新设置。

        2
  •  5
  •   Naoise Golden    13 年前

    我也来问这个问题,并以一种更优雅的方式来解决它(IMHO)。

    $('.jqEdit').live('click',function(event) {
        event.preventDefault();
        $(this).editable('save.php')
    });
    
    推荐文章