Javascript 选择由Firebase动态创建的元素
我创建了一个网站,它显示了Firebase数据库中的照片。我希望当按下心脏按钮时,返回带有所选图像url的警报 我遇到了问题,因为当我单击按钮时,它会返回数据库中的所有URL,而不仅仅是我选择的动物的URL JavaScript/jQuery:Javascript 选择由Firebase动态创建的元素,javascript,jquery,firebase,firebase-realtime-database,Javascript,Jquery,Firebase,Firebase Realtime Database,我创建了一个网站,它显示了Firebase数据库中的照片。我希望当按下心脏按钮时,返回带有所选图像url的警报 我遇到了问题,因为当我单击按钮时,它会返回数据库中的所有URL,而不仅仅是我选择的动物的URL JavaScript/jQuery: var read_db = firebase.database().ref('animais/Gato'); read_db.orderByKey().limitToLast(100).on("child_added", function (snaps
var read_db = firebase.database().ref('animais/Gato');
read_db.orderByKey().limitToLast(100).on("child_added", function (snapshot) {
var animal = snapshot.key;
var search_image = firebase.database().ref("animais/Gato/" + animal + "/_img/");
search_image.once('value').then(function (snapshot) {
let $parent = $('<div/>', {
'class': 'div1'
});
let $limits = $('<div/>', {
'class': 'border'
});
let $image = $('<img/>', {
'src': snapshot.val(),
'class': 'animal'
});
let $bar_like = $('<div/>', {
'class': 'bar'
});
let $icon_like = $('<img/>', {
'src': 'css/like.png',
'class': 'icon_like',
'id': 'btn_like'
});
$bar_like.append($icon_like);
$limits.append($bar_like);
$limits.append($image);
$parent.append($limits).appendTo(".put_divs_here");
$(document).ready(function () {
$("#btn_like").click(function () {
alert(snapshot.val());
});
});
var read_db=firebase.database().ref('animais/Gato');
读取\u db.orderByKey().limitToLast(100).on(“添加了子项”,函数(快照){
var-animal=snapshot.key;
var search_image=firebase.database();
搜索图像。一次('value')。然后(函数(快照){
设$parent=$(“”{
'class':'div1'
});
设$limits=$(“”{
“类”:“边界”
});
设$image=$(“”{
'class':'bar'
});
让$icon_like=$('
我认为您已经为每个项目创建了唯一键
您只需从所选项目中获取唯一键
,然后启动firebase查询
var id = 1234 //get selected element key here;
var read_db = firebase.database().ref('animais/Gato/' + id);
read_db.once('value').then(function (snapshot) {
let $parent = $('<div/>', {
'class': 'div1'
});
let $limits = $('<div/>', {
'class': 'border'
});
let $image = $('<img/>', {
'src': snapshot.val(),
'class': 'animal'
});
let $bar_like = $('<div/>', {
'class': 'bar'
});
let $icon_like = $('<img/>', {
'src': 'css/like.png',
'class': 'icon_like',
'id': 'btn_like'
});
$bar_like.append($icon_like);
$limits.append($bar_like);
$limits.append($image);
$parent.append($limits).appendTo(".put_divs_here");
$(document).ready(function () {
$("#btn_like").click(function () {
alert(snapshot.val());
});
});
var id=1234//在此处获取所选元素键;
var read_db=firebase.database().ref('animais/Gato/'+id);
读取数据库一次(“值”)。然后(函数(快照){
设$parent=$(“”{
'class':'div1'
});
设$limits=$(“”{
“类”:“边界”
});
设$image=$(“”{
'class':'bar'
});
让$icon_like=$('
当您在firebase中使用push()
方法时,它将自动为您的记录生成唯一密钥。使用set()
或update()
方法创建您自己的自定义密钥。我认为您已经为每个项目创建了唯一密钥
您只需从所选项目中获取唯一键
,然后启动firebase查询
var id = 1234 //get selected element key here;
var read_db = firebase.database().ref('animais/Gato/' + id);
read_db.once('value').then(function (snapshot) {
let $parent = $('<div/>', {
'class': 'div1'
});
let $limits = $('<div/>', {
'class': 'border'
});
let $image = $('<img/>', {
'src': snapshot.val(),
'class': 'animal'
});
let $bar_like = $('<div/>', {
'class': 'bar'
});
let $icon_like = $('<img/>', {
'src': 'css/like.png',
'class': 'icon_like',
'id': 'btn_like'
});
$bar_like.append($icon_like);
$limits.append($bar_like);
$limits.append($image);
$parent.append($limits).appendTo(".put_divs_here");
$(document).ready(function () {
$("#btn_like").click(function () {
alert(snapshot.val());
});
});
var id=1234//在此处获取所选元素键;
var read_db=firebase.database().ref('animais/Gato/'+id);
读取数据库一次(“值”)。然后(函数(快照){
设$parent=$(“”{
'class':'div1'
});
设$limits=$(“”{
“类”:“边界”
});
设$image=$(“”{
'class':'bar'
});
让$icon_like=$('
当您在firebase中使用push()
方法时,它将自动为您的记录生成唯一密钥。使用set()
或update()
方法创建您自己的自定义密钥