Не удается добавить данные списка Firebase в HTML-таблицу из-за push-идентификатора - PullRequest
0 голосов
/ 03 апреля 2019

Я пытался добавить данные Firebase в HTML-таблицу, но, похоже, это не работает. Идентификаторы push могут быть причиной. Кто-нибудь со знаниями о том, как это исправить? Ниже мой код.

HTML

<div class="table100-head">
<table>
<thead>
<tr class="row100 head">
<th class="cell100 column1">Staff Name</th>
<th class="cell100 column2">Department</th>
<th class="cell100 column3">Issue</th>
<th class="cell100 column4">Issued To</th>
<th class="cell100 column5">Time Reported</th>
<th class="cell100 column6">Issue Status</th>
<th class="cell100 column7">Time Solved</th>
</tr>
</thead>
</table>
</div>
<div class="table100-body js-pscroll">
<table id="table_body">
<tbody>

</tbody>
</table>
</div>

JS

(function() {

// Initialize Firebase
var config = {
apiKey: "AIzaSyDPpRA*********WOAtSlplK8g7c",
authDomain: "hotel-report-ticketing-system.firebaseapp.com",
databaseURL: "https://hotel-report-ticketing-system.firebaseio.com",
projectId: "hotel-report-ticketing-system",
storageBucket: "hotel-report-ticketing-system.appspot.com",
messagingSenderId: "731***033376"
};
firebase.initializeApp(config);

var rootRef = firebase.database().ref().child("Hotel 
Complaints").child("Hotel Complaintsid");

rootRef.on("child_added", snap => {

var staff_n = snap.child("staff_name").val();
    var staff_d = snap.child("staff_department").val();
    var issue = snap.child("issue_description").val();
    var issue_t = snap.child("issue_to").val();
    var issue_tym = snap.child("issue_time").val();
    var issue_s = snap.child("issue_status").val();
    var issue_t_s = snap.child("time_solved").val();

    $("#table_body").append("<tr><td>" + staff_n + "</td><td>" + staff_d + "</td><td>" + issue + "</td><td>" + issue_t + "</td><td>" + issue_tym + "</td><td>" +
    issue_s + "</td><td>" + issue_t_s + "</td></tr>");
});

});

Снимок базы данных Firebase

enter image description here

В чем может быть моя проблема?

1 Ответ

0 голосов
/ 03 апреля 2019

Прежде всего вы можете иметь:

var staff = snap.val();

, а затем получить доступ к реквизиту с помощью: staff.issue_to, staff.issue_status Во-вторых, вы хотите выбрать

$('#table_body tbody')

с jquery, так что вы можете добавить к нужному элементу.

Дайте мне знать, если это сработало.

EDIT: Кроме того, всякий раз, когда что-то не работает в console.log ваших переменных, посмотрите, правильный ли селектор jQuery, посмотрите, существуют ли все эти значения, и посмотрите в инспекторе, чтобы увидеть, были ли элементы добавлены в ваш html, но, возможно, они пусты, потому что переменные пусты.

...