Javascript 当JSON不存在时通知用户';不包含任何数据
我正在尝试制作一个PhoneGap应用程序,它使用PHP getJSON函数从MYSQL获取数据,然后将其作为列表发布到应用程序上。列表部分工作正常,但如果服务器上没有数据,我想以某种方式通知用户 现在它什么也没有显示,因为我正在尝试开发一个移动应用程序,用户可能会认为连接很慢,应用程序仍然在尝试获取数据,即使没有什么可以获取的 这是我使用的代码:Javascript 当JSON不存在时通知用户';不包含任何数据,javascript,json,cordova,Javascript,Json,Cordova,我正在尝试制作一个PhoneGap应用程序,它使用PHP getJSON函数从MYSQL获取数据,然后将其作为列表发布到应用程序上。列表部分工作正常,但如果服务器上没有数据,我想以某种方式通知用户 现在它什么也没有显示,因为我正在尝试开发一个移动应用程序,用户可能会认为连接很慢,应用程序仍然在尝试获取数据,即使没有什么可以获取的 这是我使用的代码: function getEmployeeList() { $.getJSON(serviceURL + 'getemployees.php'
function getEmployeeList() {
$.getJSON(serviceURL + 'getemployees.php', function(data) {
if(JSON.stringify(data) != JSON.stringify(oldData)){
$('#employeeList li').remove();
employees = data.key;
$.each(employees, function(index, employee) {
$('#employeeList').append('<li><a href="keikka.html?id=' + employee.IND + '">' +
'<h4>' + employee.OSO + '</h4>' +
'<img src="pics/' + employee.TILA + '.png"/>' +
'<p>' + employee.AIKA + '</p>' +'</a></li>');
});
$('#employeeList').listview('refresh');
if(oldData != "")
alert("New data!");
oldData = data;
}
});
}
函数getEmployeeList(){
$.getJSON(serviceURL+'getemployees.php',函数(数据){
如果(JSON.stringify(data)!=JSON.stringify(oldData)){
$('#employeeList li')。删除();
employees=data.key;
$。每个(员工,职能部门(索引,员工){
$('employeeList')。追加('li>');
});
$('#employeeList').listview('refresh');
如果(旧数据!=“”)
警报(“新数据!”);
oldData=数据;
}
});
}
如何使json看起来像这样时,它会发布一个类似“无数据”的文本,使用一些ajax调用从服务器检索数据。检查客户端的数据(让服务器返回一些错误代码),这样您就知道没有要显示的数据了。如果是这种情况,则显示无数据消息或最适合用户的任何消息 比如:
$.getJSON('someurl', function(data){
if(data.key.length <= 0){
$('#mydatacontainer').append('<span class="nodata">No data</span>');
}
});
$.getJSON('someurl',函数(数据){
如果(data.key.length)我想他要求使用php语言,那么现在我正确地制作了它,这到底是哪种语言?@Baszz我在这里找到了它,所以我回答了它的错误。如果你能解释一下它的错误,我会很高兴地接受你的建议,否则你就错了。如果Json是空的,这表明“没有数据”文本,但当再次出现新数据时,文本不会消失,直到我刷新page@user1423276:没错。如果有数据,您应该删除元素(如果有)。@user1423276:好的,您的代码应该相对简单,以更改我示例中的示例代码。您可以使用jQuery的remove()方法删除元素(如果愿意)。
$.getJSON('someurl', function(data){
if(data.key.length <= 0){
$('#mydatacontainer').append('<span class="nodata">No data</span>');
}
});