对当前不存在的ID执行功能

时间:2013-03-24 13:49:43

标签: javascript jquery

我的页面上有一个按钮,它调用这样的jQuery函数:

$('[id^=edit]').one('click',function (){
    id = $(this).attr('id')
    changedId = id.replace('edit', '') // cut off the word 'edit'
    oldValue = $('#' + changedId).text()
    $('#' + changedId).html("<input class='myInput' type='text' value='" + oldValue +"'/>");
    $(this).addClass('success');
    $(this).attr('id', changedId+'Button');
    $(this).text("save it")
});

基本上,这次点击会在段落中创建一个输入元素,并为该按钮添加另一个类,然后更改它的ID。

我想编写第二个函数,当单击带有新ID的按钮时,该函数将被执行。例如:

$('[id$=Button]').click(function(){
    alert("it works");

});

这样的事情可能吗?这个新函数会触发对我的Django应用程序的一些AJAX调用,但那是无关紧要的。

2 个答案:

答案 0 :(得分:0)

如果您希望将活动委托给尚未存在的元素,请使用on

 $(document.body).on('click', '[id$=Button]', function(){

答案 1 :(得分:-1)

你可以使用jquery:

$('#' + changedId + 'Button').live('click', function(event) {
   alert('it works');
});