【问题标题】:How to read/write data- attributes after they have been dynamically changed by jQuery?jQuery动态更改数据属性后如何读取/写入数据属性?
【发布时间】:2013-12-20 00:52:24
【问题描述】:

我正在创建一个可以使用Mix It Up 排序的项目列表。我想在每个项目上都有一个向上和向下按钮,用于增加或减少每个项目的投票,然后根据新投票,在列表中向上或向下移动它。

这一切都很好,但是我在使用数据属性进行 Mix It Up 时遇到了问题。 Mix It Up 使用数据属性进行排序,因此在我的代码中我更改了data-votes 属性(使用$(selector).data('votes'))。但是,每当我打印出具有“已更改”数据属性的元素时,它们都与开始时相同。

如何强制 jQuery / Mix It Up 重新读取数据属性,以便 Mix It Up 可以使用新属性动态排序?

【问题讨论】:

  • 因为 jQuery 不使用.dataset 来存储数据值,它使用内部数据结构来维护它以实现跨浏览器兼容性
  • 那么有什么方法可以访问它吗?

标签: javascript jquery jquery-data


【解决方案1】:

我认为你需要这样做:

$(selector).attr('data-votes', newCount);

如果您尝试读取属性本身。如果你想通过.data 设置东西,你可以链接它...

$(selector).attr('data-votes', newCount).data('votes', newCount);

【讨论】:

    猜你喜欢
    • 2013-02-19
    • 1970-01-01
    • 1970-01-01
    • 2018-02-07
    • 2013-02-21
    • 1970-01-01
    • 1970-01-01
    • 2019-08-11
    • 2014-06-28
    相关资源
    最近更新 更多