2013-04-21 2 views
1

Как бы я сделать это Append только если телефон существует и пропустить, если телефон не существуетJQuery добавить, если определено

for (var i in data.businesses) { 
    $('body').append("<p>" + data.businesses[i].telephone + "</p>"); 
} 
+0

Что такое телефон? –

+0

Возможный дубликат [Есть ли функция «существует» для jQuery?] (Http://stackoverflow.com/questions/31044/is-there-an-exists-function-for-jquery) –

+1

Вы знаете о 'if'/'else', которые я предполагаю? Вы действительно спрашиваете, тогда [«Как проверить, имеет ли объект свойство в Javascript?»] (Http://stackoverflow.com/questions/135448/how-do-i-check-to-see- if-an-object-has-a-property-in-javascript) Или вы можете отключиться из-за использования 'for..in'. См. Http://stackoverflow.com/questions/500504/why-is-using-for-in-with-array-iteration-such-a-bad-idea –

ответ

1

Попробуйте

$.each(data.businesses, function(index, business){ 
    if(business.telephone){ 
     $('body').append("<p>" + business.telephone + "</p>"); 
    } 
}); 
0

Попробуйте это:

for (var i in data.businesses) { 
    if(data.businesses[i].telephone !== null and data.businesses[i].telephone !== undefined) { 
     $('body').append("<p>" + data.businesses[i].telephone + "</p>"); 
    } 
} 
+0

[Это хорошая статья для проверки наличия свойства.] (http://www.nczonline.net/blog/2010/07/27/determining-if-an-object-property-exists/) –

1
for (var i in data.businesses) { 
    if(data.businesses[i].telephone) 
     $('body').append("<p>" + data.businesses[i].telephone + "</p>"); 
} 
Смежные вопросы