如何使用jquery创建span

如何使用jquery创建span,jquery,Jquery,我在ajax的成功中得到了php的响应,它是json对象,我希望在动态创建的span中显示每个元素,并在每个span上单击事件。我希望所有span都应该在div1(div)中。我正在尝试下面的代码。 我需要循环吗?? 我想在单击调用$.ajax以获得响应时,创建所有单击span事件。 谢谢 $(“”{ 'id':'myspan', “类”:“myClass”, 'text':'text Only', }).on('单击',函数()){ 警报(this.id);// }).appendTo(“#d

我在ajax的成功中得到了php的响应,它是json对象,我希望在动态创建的span中显示每个元素,并在每个span上单击事件。我希望所有span都应该在div1(div)中。我正在尝试下面的代码。 我需要循环吗?? 我想在单击调用$.ajax以获得响应时,创建所有单击span事件。 谢谢

$(“”{
'id':'myspan',
“类”:“myClass”,
'text':'text Only',
}).on('单击',函数()){
警报(this.id);//
}).appendTo(“#div1”);

假设您正在将JSON解析为一个对象,这将允许您在其中循环(根据需要调整属性)

var span=$('');
单击(函数(){alert($(this.attr('id'));});
for(json中的对象){
span.attr('id',json[object]['id']).addClass(json[object]['class']).text(json[object]['text']);
$('#div1')。追加(span);
}

您应该迭代json对象,并为每次迭代将该跨度添加到现有div中。您可以添加任何您喜欢的功能,您可以说span将具有来自json数据的idobj@user3222876是,因为一个页面上只能有一个id。很好,但我的span尚未存在,无法使用span.clik,我希望创建所有span单击一次。我将处理创建的跨度的单击事件afterwards@user3222876span是由
var span=$('')创建的因此它在
span时确实存在。调用click
时请注意在插入后删除类,在循环后再追加一次dom,这可能是相关的
$('<span/>', {
    'id':'myspan',
    'class':'myClass',
    'text':'Text Only',
}).on('click', function(){
    alert(this.id); // 
}).appendTo('#div1');
var span = $('<span/>');
span.click(function() { alert($(this).attr('id')); });
for (object in json) {
  span.attr('id',json[object]['id']).addClass(json[object]['class']).text(json[object]['text']);
  $('#div1').append(span);
}