我正在执行 ajax 调用并替换 div 类中的响应。在第一次 ajax 调用时,响应在类内被正确替换,但第二次我从响应中获取了数据,但响应没有替换类内的数据。
我正在尝试以下方法。
$(document).on('click', '#approveallusers', function(){
var checked_ids = []
$("#UserList").find('input[type=checkbox]').each(function () {
var $this = $(this);
if($this.is(":checked") && $this.hasClass('selectbox')){
checked_ids.push($this.attr("userid"));
}
});
$.ajax({
url : '/approve-website-users',
method : 'POST',
data : JSON.stringify({'checked_ids':checked_ids}),
contentType : "application/json",
success : function(data) {
if(data.status == 'success') {
alert(data.res)
$('.users').replaceWith(data.res);
}
}
});
})
这里的data.res
是一个html元素,它是从服务器端渲染的。
谢谢..
最佳答案
.replaceWith
将替换包含 html 标签的 div,因此不会有任何类用户。
请参阅此了解更多信息: http://api.jquery.com/replacewith/#replaceWith-function
也许您需要.innerHTML
或.html
检查这里:http://api.jquery.com/html/#html-htmlString
关于javascript - Dom 元素在第二次时不刷新,但在第一次时有效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45723563/