JavaScript JQuery 为什么按钮的 ID 没有被正确引用

标签 javascript jquery html firebase web

您好,感谢您抽出时间。

我有一个疑问,因为我试图将从 Firebase 数据库中读取的 ID 与标识该按钮的 ID 关联起来。这很重要,因为此按钮会将我们引导至事件的修改页面,因此事件的 ID 就是我们用来加载其数据的 ID。

但是这些按钮的 ID 看起来像是向前一位,让我们看看:

button's IDs

如您所见,按钮 0 的 ID 为 Ejemplo nuevo,它是下一行的事件,依此类推。

事件: events

代码: code

函数代码:

   function insertPlans() {
        setReferences();
        $("#title").html("Planes");
        resetAllData();

        $("#table thead").html("<tr>" +
            "<td>ID</td> <td>Capacidad</td> <td>Fecha</td> <td>Descripción</td> <td>Ubicación</td> " +
            "<td>Título</td> <td>Organizador</td> <td>Precio</td> <td>Prioridad</td><td>Asistentes</td>" +
            "<td>Visibilidad</td></tr>");

        dbRef.child('plans').once('value', function (snap) {
            snap.forEach(function (planID) {
                dbRef.child('plans/' + planID.key.toString()).once('value', function (snap) {
                    var row = "<tr><td><button id='new-button' class='btn btn-primary' onclick='saveEventName(this.id)'>Modificar evento</button>" + planID.key.toString() + "</td>";
                    $("#new-button").attr('id', planID.key.toString());
                    snap.forEach(function (fields) {
                        row += "<td>" + fields.val() + "</td>";
                    });
                    $("#table").find("tbody").append(row + "</tr>");
                });
                $("#table").find("tbody").append("</tr>");
            });
        });
    }

另外,如果我将控制台日志设置为:

console log

它打印出正确的 ID:

perfect IDss

你能帮我一下吗?

最佳答案

$(‘#new-button’) 始终引用前一行,因为我们尚未将 row 附加到文档。

您可以先插入,然后您可以使用选择器更改其ID

关于JavaScript JQuery 为什么按钮的 ID 没有被正确引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47484234/

相关文章:

javascript - 以全分辨率捕获 HTML5 中的图像

javascript - 基于javascript数组数据显示行和列

javascript - ExpressJS 将变量传递给 JavaScript

javascript - AngularJS - 如何在 JS 中加载绑定(bind)到的变量之前不显示 HTML 元素?

javascript - 我收到 'this is not a function' 错误

javascript - 如何使用javascript根据背景颜色更改文本颜色?

html - 发布体内定心形式 | HTML

javascript - json 键作为数字

javascript - 契约JS : how to publish to a pact-broker

javascript - Safari 嵌套滚动条错误?