Jquery 在AJAX和WordPress中找不到数据时显示消息
我在WordPress中有一个表单过滤器 我试图在没有数据的情况下发布消息,但我无法:Jquery 在AJAX和WordPress中找不到数据时显示消息,jquery,ajax,wordpress,Jquery,Ajax,Wordpress,我在WordPress中有一个表单过滤器 我试图在没有数据的情况下发布消息,但我无法: $.ajax({ url : ajax_url, data : data, success : function(response) { mafs.find("#ajax_fitler_search_results").empty(); if(response) { for(var i = 0 ; i < response.lengt
$.ajax({
url : ajax_url,
data : data,
success : function(response) {
mafs.find("#ajax_fitler_search_results").empty();
if(response) {
for(var i = 0 ; i < response.length ; i++) {
var img = null;
if(response[i].statut == 'encours') {
img = '//localhost:3000/app/themes/sofico2018/dist/images/icon-encours.svg'
}
var html = "<li class='cList__item'>";
html += " <img width='18' height='21' src='" + img + "' />";
html += "<p class='cList__chantier'>" + response[i].title + "</p>"
html += " <p>Province: " + response[i].province + "</p>";
html += "</li>";
mafs.find("#ajax_fitler_search_results").append(html);
}
} else {
alert('error');
var html = "<li class='no-result'>No matching movies found. Try a different filter or search keyword</li>";
mafs.find("#ajax_fitler_search_results").append(html);
}
}
});
});
我不知道为什么我在提交验证时得到了答案200,但没有结果。这个问题可能来自于什么
非常感谢你的帮助 尝试在通过ajax请求时发送“数据类型”。
尝试此-->数据类型:“json”
$.ajax({
url : ajax_url,
data : data,
dataType: 'json',
success : function(response) {
}
});
如果您需要一个JSON对象,那么设置contentType和请求头,如下所述 您可以尝试jQuery.isEmptyObject(response)来验证对象是否为空
$.ajax({
url: url,
dataType: 'json',
type: method type,
data : data,
contentType: "application/json",
beforeSend: function (e) {
e.setRequestHeader('Accept', 'application/json; charset=utf-8')
},
success: function (response) {
if(!jQuery.isEmptyObject(response)){
//logic
}else{
//No object recived from backend
}
},
error: function () {
console.log ("Failed!");
}
});
响应200表示php执行正确。这与结果无关:零记录或1000记录。您没有检查响应中的内容
$.ajax({
url: url,
dataType: 'json',
type: method type,
data : data,
contentType: "application/json",
beforeSend: function (e) {
e.setRequestHeader('Accept', 'application/json; charset=utf-8')
},
success: function (response) {
if(!jQuery.isEmptyObject(response)){
//logic
}else{
//No object recived from backend
}
},
error: function () {
console.log ("Failed!");
}
});