Javascript 如何更新html表中的firebase数据库数据?
我已经在HTML表中显示了firebase数据库数据 现在我想单击HTML表中的“Approve”按钮来更新状态以批准。(单击第一行,仅更新第一个数据) 这是我所做的按钮的代码,但是我不能做我想要的Javascript 如何更新html表中的firebase数据库数据?,javascript,html,firebase,firebase-realtime-database,Javascript,Html,Firebase,Firebase Realtime Database,我已经在HTML表中显示了firebase数据库数据 现在我想单击HTML表中的“Approve”按钮来更新状态以批准。(单击第一行,仅更新第一个数据) 这是我所做的按钮的代码,但是我不能做我想要的 function ButtonApproveClick(){ var req = document.getElementById('Users'); var dbRefReq = firebase.database().ref().child('Users') dbRefR
function ButtonApproveClick(){
var req = document.getElementById('Users');
var dbRefReq = firebase.database().ref().child('Users')
dbRefReq.once("child_added", function(snapshot ) {
snapshot.ref.update({ statuss: "valid" })
});
}
这是我的数据库,看起来像:[Firebase数据库]
谁能帮我解决这个问题
(函数(){
变量配置={
apiKey:“AIzaSyDwrBm054kYrvm-6hZg3Ve\u I0Rgp4MfOGo”,
authDomain:“petservice-f7559.firebaseapp.com”,
数据库URL:“https://petservice-f7559.firebaseio.com",
projectId:“petservice-f7559”,
storageBucket:“petservice-f7559.appspot.com”,
messagingSenderId:“390073142865”
};
firebase.initializeApp(配置);
const req=document.getElementById(“用户”);
const dbRefReq=firebase.database().ref().child('用户')
dbRefReq.on('child_added',snap=>{
var name=snap.child(“name”).val();
var phone=snap.child(“phone”).val();
var status=snap.child(“status”).val();
var icurl=snap.child(“icurl”).val();
var userid=snap.child(“userid”).val();
$(“#表体”)。追加(“+name+”“+phone+”“+status+”批准删除“);
});
}());
函数App(){
firebase.database().ref().child('Users').child(dataid).update({status:'valid})
}
函数Dis(){
警报(“Hi2”);
}
正文{
背景:#fff;
填充:0px;
边际:0px;
字体系列:“Nunito”,无衬线;
字体大小:16px;
}
输入,按钮{
字体系列:“Nunito”,无衬线;
字号:700;
}
.main div、.loggedin div{
宽度:20%;
保证金:0px自动;
边缘顶部:150px;
填充:20px;
显示:无;
}
.主分区输入{
显示:块;
边框:1px实心#ccc;
边界半径:5px;
背景:#fff;
填充:15px;
大纲:无;
宽度:100%;
边缘底部:20px;
过渡:0.3s;
-webkit转换:0.3s;
-moz跃迁:0.3s;
}
.主分区输入:焦点{
边框:1px实心#777;
}
.main div按钮、.loggedin div按钮{
背景:5d8ffc;
颜色:#fff;
边框:1px实心#5d8ffc;
边界半径:5px;
填充:15px;
显示:块;
宽度:100%;
过渡:0.3s;
-webkit转换:0.3s;
-moz跃迁:0.3s;
}
.main div按钮:悬停,.loggedin div按钮:悬停{
背景:#fff;
颜色:5d8ffc;
边框:1px实心#5d8ffc;
光标:指针;
}
桌子{
字体系列:arial,无衬线;
边界塌陷:塌陷;
宽度:100%;
}
td,th{
边框:1px实心#dddddd;
文本对齐:左对齐;
填充:8px;
}
tr:n个孩子(偶数){
背景色:#dddddd;
}
$(文档).ready(函数(){
$(“#myInput”)。在(“keyup”,function()上{
var value=$(this.val().toLowerCase();
$(“#A”).filter(函数(){
$(this).toggle($(this).text().toLowerCase().indexOf(value)>-1)
});
});
});
Firebase登录
你好
所有用户
名称
电话
地位
网址
批准
不赞成
这是一个三步流程。由于您没有共享完整的代码/HTML,因此我只提供所需的步骤:
ButtonApproveClick
知道用户单击的特定按钮id
属性中)firebase.database().ref().child('Users').child(keyOfUserThatWasClicked)。update({status:'valid})
。这里不需要once()
listenerfirebase.database().ref().child('Users').on('value', function(snapshot) {
snapshot.forEach(function(userSnapshot) {
var tr = document.createElement('tr');
tr.id = userSnapshot.key;
// TODO: populate the rest of the row and add it to the table
});
然后,您可能会获得用户单击的行的ID:
function ButtonApproveClick(e){
var button = e.target;
var tr = e.parentElement.parentElement; // might need more or fewer to reach the right/TR element in the HTML
var key = tr.id;
firebase.database().ref().child('Users').child(key).update({ statuss: "valid" })
}
我对代码做了一些修改,现在我已经在数据库中保存了用户id,现在我想在用户单击按钮时获取id。