2016-11-27 7 views
0

Ich versuche, nach einem Element zu suchen, indem ich eine GET-Anfrage an meinen Dienst mache und dann meine Tabelle mit der Antwort bearbeite, aber das kann ich mit meinem Code nicht erreichen.Eine leere Tabelle mit jquery füllen

$(function(){ 
var $searchInput = $("#search"); 
$("#searchOptions").change(function(){ 
if($(this).val() =="Fragment"){ 
$searchInput.keyup(function(e){ 
var q = $searchInput.val(); 
$.ajax({ 
    type: 'GET', 
    url: 'http://localhost:51834/CoffeeService.svc/getaorderfrag/' + q, 

    success: function(orders){ 
    $("#orderTable").empty(); 
    $.each(orders, function(i, order){ 
     $("#orderTable tbody").append('<tr><td>' + order.Name + '</td><td>' + order.Order + '</td><td>' + order.Price + '</td></tr>'); 
     }); 
     }   
     }); 
    }); 
    } 
}); 
}); 
+0

* "Ich kann nicht scheinen, zu erreichen, dass" * - Pflege zu erarbeiten? – jbutler483

+0

@ jbutler483 Wenn die Gegenstände erhalten wurden, verschwindet die Tabelle und es ist nur ein leerer Platz. – kennyYice23

+0

Überprüfen Sie Ihr Netzwerk in Ihrem Inspect-Element, um festzustellen, ob etwas vom Server zurückgegeben wird – jbutler483

Antwort

0

jbutler483 ist richtig, Sie sind die gesamte Tabelle zu töten, thead, tbody, (alles) mit $ ("# orderTable") empty(). Erklärung.

Ihr Append zielt auf etwas ab, das nicht existiert. Versuchen Sie folgendes:

$(function(){ 
 
var $searchInput = $("#search"); 
 
$("#searchOptions").change(function(){ 
 
if($(this).val() =="Fragment"){ 
 
$searchInput.keyup(function(e){ 
 
var q = $searchInput.val(); 
 
$.ajax({ 
 
    type: 'GET', 
 
    url: 'http://localhost:51834/CoffeeService.svc/getaorderfrag/' + q, 
 

 
    success: function(orders){ 
 
    $("#orderTable tbody").empty(); 
 
    $.each(orders, function(i, order){ 
 
     $("#orderTable tbody").append('<tr><td>' + order.Name + '</td><td>' + order.Order + '</td><td>' + order.Price + '</td></tr>'); 
 
     }); 
 
     }   
 
     }); 
 
    }); 
 
    } 
 
}); 
 
});