我有一个表单提交的 ajax post 请求,我根据控制器返回的值操作页面,但我的问题是,每当提交表单时,我都需要删除最后一个请求中的值。例如,我提交表单,当发生这种情况时,如果第二次提交表单,我会在页面上添加一些文本,我需要从上次中删除这些值并在页面上添加新内容。
这是代码:
function ajaxPost(){
// DO POST
$.ajax({
type : "POST",
url : "/search",
dataType: "json",
data : {
'marcaId': $('#marcaId').val(),
'modelId': $('#modelId').val(),
'pretDeLa': $('#pretDeLa').val(),
'pretPanaLa': $('#pretPanaLa').val(),
'anFabrDeLa' : $('#anFabrDeLa').val(),
'anFabrPanaLa' : $('#anFabrPanaLa').val(),
'orasParam' : $('#orasParam').val()
},
success : function(data) {
console.log(data);
for(var i=0; i<data.length; i++){
$('.row.autovitElements').append("<div class='col-sm-3 elementAutovit'>" + "<div class='card' style='width:20rem;'>" +
"<img class='card-img-top' src=" + JSON.stringify(data[i].img) + "alt='Card image cap'>" +
"<div class='card-body text-center'>" +
"<p class='card-text text-center' style='color: black'>" +data[i].title+ "</p>" +
"<ul class='list-group list-group-flush'>" +
"<li class='list-group-item'>" +
"<div class='row'>" +
"<div class='col-md-6'>" +
"<i class='material-icons'></i><span>"+ data[i].price +"</span>" +
"</div>" +
"<div class='col-md-6'>" +
"<i class='material-icons'></i><span>"+data[i].city+"</span>" +
"</div>" +
"</div>" +
"</li>" +
"</ul>" +
"<button href=''#' class='btn btn-danger'>Save</button>" +
"</div>" +
"</div> " +
"</div> ");
}
})
我试过了,$('.row.autovitElements').hide();
但它不起作用:(
for(var i=0; i<data.length; i++){
$('.row.autovitElements').append("<div class='col-sm-3 elementAutovit'>" + ...
您为 ajax 结果追加的元素是elementAutovit
,它们是.row.autovitElements
元素的子元素。因此,要“重置”结果,您将删除所有附加的元素,这可以通过以下方式完成:
$('.row.autovitElements .elementAutovit').remove()
这将删除所有这些特定元素。或者,如果容器中没有其他要保留的东西,您可以简单地清空它
$('.row.autovitElements').empty()
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句