2016-04-15 3 views
0

ich Daten aus meiner Datenbank auf Last zu bekommen versuchen aber auf dem Knopf klicken, wenn ich Daten will in der gleichen Tabelle wieder einzufügen habe ich keine Ahnung, wie esDaten können nicht wieder in Bootstrap-Tabelle hinzuzufügen

hier einfügen mein HTML-Code ist

<table id="example" class="display" onload="callData()"></table> 
<button type="button" id="idTestTraffic" class="btn btn-primary">Get Test Traffic</button> 

Mein JavaScript-Code

function setValue(data) { 
    var dataSet = []; 
    if (data.response.Status == 1) { 
     for (i = 0; i < data.response.Result.length; i++) { 

      dataSet.push([]) 
     } 
     for (i = 0; i < data.response.Result.length; i++) { 
      dataSet[i].push(i + 1); 
      dataSet[i].push(data.response.Result[i].testName); 
      dataSet[i].push(data.response.Result[i].view); 
      dataSet[i].push(data.response.Result[i].start); 
      dataSet[i].push(data.response.Result[i].finish); 
     } 

    } else 
     showMessage("green", data.response.Description, ""); 

    if (dataSet[0].length == 5) 
     return dataSet; 
} 

function callData() { 
    debugger; 
    $('#example').DataTable({ 
     data: dataIsSet(), 
     columns: [{ 
      title: "Sr No." 
     }, { 
      title: "Test Name" 
     }, { 
      title: "View" 
     }, { 
      title: "Start" 
     }, { 
      title: "Finish" 
     }], 

    }); 
} 

function dataIsSet() { 
    var dataSet = []; 
    syncAjaxCall("POST", "trafficanalysis/viewfinishanalysis", "", "application/json") 
     .done(
      function(data) { 
       dataSet = setValue(data); 
      }); 
    return dataSet; 
} 

Auf Taste meinen Code klicken

$("#idTestTraffic").click(function() { 
    syncAjaxCall("POST", "trafficanalysis/viewfinishanalysis", "", "application/json") 
     .done(function(data) { 
      // I want to set data in same table, but no clue how to set data in same table 
      dataSet = setValue(data); 
     }); 

}); 
+0

Sie können es selbst tun, aber es wäre für eine jQuery definitiv einfacher zu suchen sein Plugin, die das für Sie tun oder fügen Sie einige andere Bibliotheken hinzu, die dafür helfen. Im Grunde müssen Sie den tr-Knoten mit document.createElement() erstellen, dann den td-Knoten für jeden Wert erstellen und mit appendCHild die richtige Ansicht generieren. – Walfrat

+0

@Walfrat Es sieht so aus, als würde OP Datatables verwenden, also müssten sie nur die Dokumentation hier lesen: https://datatables.net/reference/api/rows.add() oder hier: https://datatables.net/ reference/api/rows(). data() –

Antwort

0

Option 1:

Sie könnten eine Variable/string mit dem Inhalt der Tabelle erstellen und es nur um die example ID anhängen. 2

Option:

die Elemente erstellen document.createElement() unter Verwendung jedes Element zu erzeugen, und dann jedes Element in eine Tabellenzeile angehängt und dann schließlich in die Tabelle example selbst anfügen.

so, was ich tun würde:

function setValue(data) { 
    var html = ""; 
    if (data.response.Status == 1) { 
     for (i = 0; i < data.response.Result.length; i++) { 
      html += '<tr>'; 
      html += '<td>' + (i + 1) + '</td>'; 
      html += '<td>' + data.response.Result[i].testName + '</td>'; 
      html += '<td>' + data.response.Result[i].view + '</td>'; 
      html += '<td>' + data.response.Result[i].start + '</td>'; 
      html += '<td>' + data.response.Result[i].finish + '</td>'; 
      html += '</tr>'; 
     } 
    } 
    return html; 
} 

Und dann, wo Sie dataSet = setValue(data); haben nur dies tun:

$('#example').append(setValue(data)); 
+0

weit über Code funktioniert, aber die Suchoperation funktioniert nicht mit dem Datensatz in der Tabelle –

Verwandte Themen