如何使用表格单元格在Firebase中检索特定数据?

时间:2018-04-01 12:59:43

标签: javascript jquery firebase

我是Javascript的新手所以请不要咬人。我写了一个简单的函数,在表中显示我的Firebase用户,我正在使用Jquery来创建它,到目前为止,我的代码看起来像这样:

 userRef.on("child_added", snap => {
             var username = snap.child("name").child("name").val();
             var surname = snap.child("name").child("surname").val();
             $("#user_table").append("<tr><td>"+ username +"</td></tr>")
             });

现在我想通过点击表中的昵称来显示每个用户的数据,我这样做:

                 $("#user_table").on('click', 'td', function() {
               userRef.on("child_added", snap =>{
                cosValue = snap.child("cos").child("cos").val();
                alert(cosValue);
              })
             });

它显示我的所有用户数据..不是我点击的这个特定的,我该如何解决? :)

1 个答案:

答案 0 :(得分:0)

 userRef.on("child_added", snap => {
         var username = snap.child("name").child("name").val();
         var surname = snap.child("name").child("surname").val();
         var cosValue = snap.child("cos").child("cos").val();
         $("#user_table").append("<tr onClick=\"displayCos(" + cosValue + ")\"><td>"+ username +"</td></tr>")
         });

 function displayCos(cos) {
   alert(cos);  //or any other action, e.g. open a PopUp window, display it in another div or table, etc.
 }

您不需要第二个.on("child_added",...

此外,您可以使用onClick侦听器执行此操作,而不是在tr标记中对内联进行编码(请参阅https://www.w3schools.com/js/js_htmldom_eventlistener.asp)。