如何通过onclick函数更改id集?

时间:2014-03-31 20:16:19

标签: javascript onclick

我有一个删除模式设置,我想要删除的模块的id被传递并设置为模态上的“删除”按钮。下面的代码为我做了这个:

$(document).on("click", "#deleteModule", function () {

        var id = $(this).data('id');
        $("#deleteModuleButton").attr('data-id', id);

});

这样做是为了让我点击模块中的“X”,然后在我点击之后,模态下降询问我是否确定。通过单击X我将id传递给模态,以便在单击“我确定”时按ID删除正确的模块。

不幸的是,每次单击该函数时都会传递相同的id。如果我在页面上有74,75和76,我可以删除我点击的第一个,说'74' - 然后每次我点击其他模块上的'X'(75,76)时,初始值为从第一次删除设置(74)永远不会被下一个元素覆盖,因此除非我刷新页面并再次尝试,否则无法删除其他模块。

onclick功能有什么固有的东西我可以忽略,有没有办法纠正这个?

2 个答案:

答案 0 :(得分:0)

如果我正确理解您的问题,您可以尝试执行以下操作:

$(document).on("click", "#deleteModule", function () {

    var id = this.data('id');

    showConfirmClosePrompt(id); // Re-factor to use across all modals

});

这样,无论你点击X上的模态ID,你都会拥有id。您可能需要检查var id = $(this).data('id');是否也是您的真正问题。

答案 1 :(得分:0)

答案是在声明中:

var id = $(this).data('id');

做得更好的是:

var id = $(this).attr('data-id', id);

前者绑定相同的值,而后者不能并且可以重复使用。在每个重复的实例中改变这一行解决了我所有的问题!