繁体   English   中英

如何获得动态创建的价值<p>

[英]how to get the value of dynamically created <p>

我在jquery中动态创建多个<p></p>元素。

var output = '<p>' + results.length + ' matches found</p>';
$.each(results, function (index, result) {
        output += '<p class="'+result.text+'">- ' + result.text + '</p>';
 });
$('#search-output').html(output);

现在,当我单击<p>元素时,我想要文本值。 我试过像

 $('#search-output').click(function(e){
        var data= $(this).text();
        console.log(data);
        $("#output").text(data);
    })

但是随后显示了#search-output的所有内容。 我想获取单击的<p>的值。 任何帮助

了解有关Event delegation

$('#search-output').on('click', 'p', function(e){
    var data= $(this).text();
    console.log(data);
    $("#output").text(data);
});

为了动态创建元素,您需要编辑jquery代码并在主体上触发click事件,如下所示

 $('body').on('click','#search-output p',function(e){
    var data= $(this).text();
    console.log(data);
    $("#output").text(data);
})

暂无
暂无

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

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