我正在尝试使用javascript获取网站的数据。我得到的问题是我无法获得用户的密钥 - > Rider - > rating - > key - >(" 评级值& #34)。我无法找到它的语法。
我想在这个jQuery中检索rating的值。
>
<script>
database = firebase.database();
var ref = firebase.database().ref().child("Users").child("Riders");
ref.on('value',gotDataa,errDataa);
function gotDataa(data){
//console.log(data.val());
var Riders = data.val();
var keys=Object.keys(Riders);
console.log(keys);
for(var i=0 ; i<keys.length;i++)
{
var k=keys[i];
var car = Riders[k].car;
var cnic = Riders[k].cnic;
var email = Riders[k].email;
var name = Riders[k].name;
var phone = Riders[k].phone;
var service = Riders[k].service;
var rating = data.child("rating").child(keys).val();
$("#table_body").append("<tr><td>" + name + "</td><td>" + phone +"</td><td>"+ email+"</td><td>"+ cnic +"</td><td>"+car+"</td><td>"+service+"</td><td>"+rating+"</td></tr>");
}
}
function errDataa(err){
console.log('Error');
console.log(err);
}
</script>
我得到null
评分值请在我错误的地方纠正我。
答案 0 :(得分:0)
执行以下操作:
var objRating = Riders[k].rating;
console.log(objRating[Object.keys(objRating)[0]]);
但是,请注意,如果每个用户只有一个评级,则不需要按照保存方式保存评级(使用自动生成的节点ID):您可以将评级直接分配给评级节点。
这意味着这样做:
-Riders
- AIKI689EKJKJKJ.... //Rider ID
- email: ....
- name: ....
.....
- rating: 5
而不是:
-Riders
- AIKI689EKJKJKJ.... //Rider ID
- email: ....
- name: ....
.....
- rating
- 57656YTYRRTGGH: 5
答案 1 :(得分:0)
function gotDataa(data){
var Riders = data.val();
data.forEach(function(childSnapshot) {
var childKey = childSnapshot.key;
var childData = childSnapshot.val();
}
}