前端用的jsp,ajax传完的值 点击删除只能删除每显示的第一行数据,看看哪边写错了

表:

img

查询

img

//删除
function del() {
var$tr=$('#td').parent();
var uesrid=$tr.children(':first').html();

$.ajax({
    url: "del",
    type: "post",
    dataType: "json",
    data: {

"userid": userid
},
success: function (data) {

        }
    
    })
}

);

var uesrid=$tr.children(':first').html(); 你这里获取的不就是每次显示的第一个么?



<button onlick="del(${userid})"></button>

function del(userid) {
$.ajax({
    url: "del",
    type: "post",
    dataType: "json",
    data: {
"userid": userid
},
success: function (data) {

        }
    
    })
}
);

}

成功的回调里,最外层的双引号变成单引号

会不会跟函数里面做的过去第一个子代元素值有关系

html+=obj["userid"]+"删除";

点击删除是删除当前行吧?

$.each(data, function (i, obj) {
html +=
"<td id="+"td-"+ userid+">"+obj.["userid"]+""+
"<button onclick="del("+"td-"+userid+")">+“删除“+"
});
$('#List').append(html); //List为 表格的id;
})

function del(id) {
var $tr=$(id).parent();
$tr.remove()