2016-07-09 5 views
1

I Kundenliste in jquery Benutzer am Iterieren richtig jeweils wie folgtWie undefiniert zu entfernen, während zeigen json Daten

$.post("customer", {param: cid, order: order}, function (data) { 
        console.log(data); 
       $.each(data.customerList, function (i, obj) { 
         $("#" + tid).append('<tr><td>' + (i + 1) + '</td><td>' + obj.customerName + '</td><td>' + obj.address + '</td>' 
           + '<td>' + obj.city + '</td><td>' + obj.state + '</td><td>' + obj.country + '</td><td>' + obj.mobno + '</td></tr>'); 
        }); 

Dieser Code funktioniert einwandfrei und Abrufen von Daten. Mein Problem ist es zeigt undefiniert für Null-Felder. wie Sie dieses Problem lösen.

+0

Um zu überprüfen, ist eine Variable le ist null: if (var == null) {...}, aber Jaqen H'ghar reagiert eleganter. – SandroMarques

+0

können Sie 'ternary operator' verwenden wie' obj.state! = Null? obj.state: "" Bedeutung, wenn 'obj.state' nicht gleich null ist zeige 'obj.state' else" " – guradio

Antwort

3

Verwendung || "":

$.post("customer", {param: cid, order: order}, function (data) { 
    console.log(data); 
    $.each(data.customerList, function (i, obj) { 
     $("#" + tid).append('<tr><td>' + (i + 1) + '</td><td>' + (obj.customerName || "") + '</td><td>' + (obj.address || "") + '</td>' 
     + '<td>' + (obj.city || "") + '</td><td>' + (obj.state || "") + '</td><td>' + (obj.country || "") + '</td><td>' + (obj.mobno || "") + '</td></tr>'); 
    }); 

Wenn das Feld leer ist, wird es einen leeren Wert gesetzt statt undefined

folgendes Beispiel:

var test = { 
 
    prop1: "Test value", 
 
    prop2: null, 
 
    prop3: undefined 
 
}; 
 

 
console.log(test.prop1 || "empty"); 
 
console.log(test.prop2 || "empty"); 
 
console.log(test.prop3 || "empty"); 
 
console.log(test.prop4 || "empty");

+0

Es entfernt auch Tabellenrahmen zwischen 2 Zellen – xrcwrn

+0

@xrcwrn Es könnte sein, weil Ihre Tabellenzelle leer ist jetzt. Versuchen Sie in Ihrem Fall, einen anderen Standardwert wie '|| zu verwenden " " 'zum Beispiel, damit die Zelle nicht leer ist –

+0

Dies zeigt auch dasselbe Problem – xrcwrn

Verwandte Themen