2016-04-26 4 views
1

ich einige JSON-Daten auf HTML-Seite in einer Liste unten zeigen muß, ist mein jQuery-CodeWie in einer Schleife json Daten in HTML zeigen

var u_Name, u_Mobile, u_lat, u_lang, driver_ID; 

function fetchEnquiry(driverid) { 
    jQuery.ajax({ 
     url: baseurl + "fetchenquiry.php", 
     data: 'driverid=' + driverid, 
     type: "POST", 
     success: function (response) { 
      response = $.trim(response); 
      if (response == "NO Enquiry") { 
       console.log(response); 
      } else { 
       var enquiryDet = jQuery.parseJSON(response); 

       jQuery(enquiryDet).each(function (index, element3) { 
        u_Name = element3.name; 
        u_Mobile = element3.mobile; 
        u_lat = element3.location_lat; 
        u_lang = element3.location_lang; 
        driver_ID = element3.driver_id; 
        $.each(enquiryDet, function (i, item) { 
         $('.notifications_show').html(enquiryDet[i].name); 
        }); 
       }); 
      } 
     }, 
     error: function() {} 
    }); 
} 

HTML CODE

<div class="notifications_show"> 

      </div> 

Es zeigt Ich habe nur ein letztes Ergebnis.

Bitte Hilfe!

+1

Vor 'each()' 'verwenden empty()' löschen die vorhandenen Inhalte verwenden dann '.append() ' – Satpal

Antwort

1

Auf diesem Teil:

$.each(enquiryDet, function (i, item) { 
     $('.notifications_show').html(enquiryDet[i].name); 
}); 

Sie den vollständigen HTML-Code des Ergebniselement zu ersetzen.

Sie müssten .append() verwenden, um weitere Werte hinzuzufügen, anstatt die aktuellen Werte zu ersetzen.

So:

$.each(enquiryDet, function (i, item) { 
     $('.notifications_show').append(enquiryDet[i].name); 
}); 

bearbeiten

Wie in den Kommentaren erwähnt, sollten Sie eine $('.notifications_show').empty() vor dem .each fügen Sie die aktuellen Ergebnisse in der Ziel div zu löschen.

1

Verwenden Sie einfach .append statt .html:

$.each(enquiryDet, function (i, item) { 
     $('.notifications_show').append(enquiryDet[i].name); 
}); 
1

Änderung dieser:

$.each(enquiryDet, function (i, item) { 
    $('.notifications_show').html(enquiryDet[i].name); 
}); 

dazu:

$('.notifications_show').empty();//flush content before adding new content 
    $.each(enquiryDet, function (i, item) { 
    $('.notifications_show').append(enquiryDet[i].name); 
}); 

html den Inhalt des ausgewählten Elements ersetzen und append Appends (Zuletzt) ​​im ausgewählten Element.

1

eine Variable verwenden und den Text anhängen dann hängen Sie ihn an die .notifications_show div

var text = ''; 
$.each(enquiryDet, function (i, item) { 
         text+=enquiryDet[i].name; 
        }); 
$('.notifications_show').html(text);