繁体   English   中英

追加后jquery事件不起作用

[英]jquery event not working after append

http://jsfiddle.net/YsnhT/2/

追加后,jQuery事件开启无效。 单击保存按钮后,我需要textarea的值。

$('.span8')
    .on('click',
            '.btn',
            function() {
        var input = $("#textarea").val();
        alert(input);
    });

$('body').on('click','#createNote',function() {                $('.span8').empty();
                $('.span8').append('<button type="button" class="btn" style="float: right; margin-right: 8px;background-color:#dddddd;font-family:Roboto Slab;color: black" id="save" data-loading-text="Saving...">Save</button><div class="hero-unit"><input type="text" style="width: 100%" id="title" placeholder="Title"/>'+ 
                '<textarea contenteditable="true" id="textarea" class="textarea" placeholder="Enter text ..."style="width: 100%;">dd</textarea></div>');

            });

HTML:

<div class="span8"></div>

由于#save是动态创建的,因此请使用以下处理程序:

$(document).on('click', '#save' ,function() {
    //do stuff
});

更新的小提琴: http : //jsfiddle.net/tymeJV/YsnhT/3/

您还应该像这样使“单击”按钮处理程序,否则它将不会在新创建的#click按钮上#click

只需以动态格式委派事件:

$(document).on('click', '#save' ,function() {
    //do stuff
})

也许对以下内容也可以这样做:

$(document).on('click', '#click' ,function() {
    //do stuff
})

保存是在这里动态创建的。因此请尝试on

$(document).on('click', '#save' ,function() {
});

一旦添加了元素,就需要将处理程序重新绑定到该元素或使用jQuery的live()函数,如下所示:

$('.span8 .btn').live('click', function() {
    var input = $("#textarea").val();
    alert(input);
});

检查这个...

$('。btn')。click(function(){

 var input = $("#textarea").val();
    alert(input);

});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM