jQuery在td中插入div

jQuery在td中插入div,jquery,html-table,insert,Jquery,Html Table,Insert,我想在单击alert按钮时将div添加到表中,div应该在类“name2”之后插入,但是当我单击按钮时,原始文本消失了,test()函数无法工作,如何修复它 功能测试(){ 警报(“测试”) } $('#form')。在('click','test',函数(){ var$row=$(this.closest('tr'); $('.one',$行)。每个(函数(){ $(this.html($('').text('Watson')).inserAfter('.name2'); }); test(

我想在单击alert按钮时将div添加到表中,div应该在类“name2”之后插入,但是当我单击按钮时,原始文本消失了,test()函数无法工作,如何修复它

功能测试(){
警报(“测试”)
}
$('#form')。在('click','test',函数(){
var$row=$(this.closest('tr');
$('.one',$行)。每个(函数(){
$(this.html($('').text('Watson')).inserAfter('.name2');
});
test();
});

名称表
亨利
骚扰
警觉的
浆果
特里
警觉的

Trt使用append代替html

功能测试(){
警报(“测试”)
}
$('#form')。在('click','test',函数(){
var$row=$(this.closest('tr');
$('.one',$行)。每个(函数(){
$(this.append($('').text('Watson')).inserAfter('.name2');
});
test();
});

名称表
亨利
骚扰
警觉的
浆果
特里
警觉的

在您的情况下无需使用
。每个
都可以直接使用

var $name2 = $(this).closest('tr').find('.name2');
您可以像这样使用InsertAfter()

function test() {
    alert('test')
}
$('#form').on('click', '.test', function () {
    var $name2 = $(this).closest('tr').find('.name2');
    ($('<div class="name"></div>').text('Watson')).insertAfter($name2);
    test();
});
功能测试(){
警报(“测试”)
}
$('#form')。在('click','test',函数(){
var$name2=$(this.closest('tr')。find('.name2');
($('').text('Watson')。后面插入($name2);
test();
});

您希望最终结果是什么?请尝试使用.append()而不是.html(),当我单击按钮时,会弹出“test”警报,并在每个名称后添加“Watson”。@Mohamed Yousef在我使用.append()后它工作了,但是如何使test()函数工作呢?谢谢!但是我不知道为什么test()函数不能工作?答案是正确的,但我不知道为什么函数.insertAfter给出一个not exist错误,所以脚本出现异常…所以strange@S.P.欢迎。。祝你好运:)