#json #server #format #response #handle
#json #сервер #формат #ответ #обрабатывать
Вопрос:
Я получаю ответ JSON от вызова AJAX, подобного приведенному ниже
{"metadata":{"assetStatusAvailable":false},"data":[{"id":"209880948","name":"1:Periodic Report","domainObjectType":"assetmessageevent","domainObjectTypeId":"assetmessageevent_209880948","heading":null,"latitude":,"longitude":,"isAlertEvent":false,"eventTime":"2016-10-03T04:53:02","assetCategory":"Underground Tank 15000GL","configurationName":"Tank","mapCurrentSymbol":"","asset":{"id":"209843212","name":"TANK001","domainObjectType":"tank","domainObjectTypeId":"tank_209843212"}}]}
Здесь широта и долгота отсутствуют, поэтому они не анализируются и, следовательно, выдают ошибку. Как справиться с таким сценарием и передать соответствующее сообщение пользователю?
Ответ №1:
Используйте следующую функцию для проверки пустого значения и нулевого значения широты, долготы
var checkBlankValue(){
$.each(obj.data, function(key, value){
if (key=='latitude' || key=='longitude'){
if (value === "" || value === null){
return false;
}
}
});
return true;
}
Проверьте пустое значение широты, долготы в данных, если какое-либо пустое значение в данных, то приведенная выше функция возвращает false, тогда вы сможете отобразить сообщение пользователю.
Что-то вроде этого
if (!checkBlankValue){
return "your message";
}