我想从firebase检索数据到HTML文本框,然后更新firebase中的数据

时间:2017-09-19 07:31:23

标签: javascript firebase firebase-realtime-database

我有两个问题。

  1. 我已经设法将数据从firebase检索到HTML表中,但是无法理解如何将这些数据放入html表单中,基本上与我用于创建数据的形式相同,进行更改然后通过firebase中的表单更新数据。

  2. 目前我正在使用child_added将数据检索到HTML表中,它工作正常并在表中显示一个新行但是当我使用child_changed时会发生什么事情,前一个数据(行)仍然存在并创建一个新行为了显示更改,我如何在firebase中更改它所在的同一行。

  3. 谢谢

    代码显示添加的数据:

    var registration = firebase.database().ref("REGISTRATION");
    
    var dataRef = firebase.database().ref("REGISTRATION");
    
    dataRef.on("child_added", function(data) {
        var rData = data.val();
    $("#reData").append("<tr><td>" + rData.email + "</td><td>" + rData.name + "</td><td>" + rData.gender + "</td><td>" + rData.birthdate + "</td><td>" + rData.phone + "</td><td>" + rData.state + "</td><td>" + rData.school + "</td><td>" + rData.class + "</td><td>" + rData.classname + "</td></tr>");
    });
    

    以HTML格式显示更新数据的代码:

    var upData = firebase.database().ref("REGISTRATION");
    
    upData.on("child_changed", function(data) {
        var rData = data.val();
    $("#reData").append = ("<tr><td>" + rData.email + "</td><td>" + rData.name + "</td><td>" + rData.gender + "</td><td>" + rData.birthdate + "</td><td>" + rData.phone + "</td><td>" + rData.state + "</td><td>" + rData.school + "</td><td>" + rData.class + "</td><td>" + rData.classname + "</td></tr>");
    });
    

1 个答案:

答案 0 :(得分:0)

Huud Rych,我为你创造了一个jsfiddle。在点击编辑时,小提琴数据将从firebase附加到表中,我已经使用过jquery,你也可以尝试一下。附加到表单的数据。按下更新按钮时,数据将被更新,表格将刷新。 Sample JS Fiddle

for (var key in data){
           data[key].key=key;// here I am pushing the key from the firebase into the array, so we can use it while updating the data. See in the Js fiddle
           dataArray.push(data[key]);
        };