[英]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.