javascript - jQuery 合并数据属性

标签 javascript jquery merge attr

当我单击按钮时,我试图连接两个数据属性,我想知道如何将它们合并为一个,而不是在第一个属性之前添加字符串,

HTML

<div id="parent">
    <button class="first" data-first='{"id":"1"}'>Test</button>
    <button class="second" data-second='{"action":"0"}'>Test</button>
</div>

当我单击带有 .first 的按钮时,我想将 data-firstdata-second 合并

jQuery

$('.parent').on('click', '.first', function() { 

    var old = $('.second').attr('data-object');

    var add = $(this).attr('data-object');

    $('.second').attr('data-object', add+old);

});

但是这会返回

data-second="{"id":"1"}{"action":"0"}"

我正在寻找的是

data-second="{"action":"0","id":"1"}"

任何帮助将不胜感激。

最佳答案

$('.second').data('object', $.extend({}, add, old));

http://api.jquery.com/jQuery.extend/

有一个方便的方法可以处理 jquery 中的 data- 属性:http://api.jquery.com/data/

演示:http://jsfiddle.net/CqrwF/

关于javascript - jQuery 合并数据属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17139973/

相关文章:

javascript - 每次 Hook 错误前的 Angular 业力幻影

javascript - 在 Node.js C++ 插件中发出事件

javascript - 如何在 HTML 中使用上下文菜单

javascript - 为什么jQuery或诸如getElementById之类的DOM方法找不到元素?

svn - 最好的锁定版本控制系统是什么?

python - 合并两个具有时间戳和队列长度的元组列表

javascript - TinyMce - 我可以将编辑器高度设置为 40px 吗?它必须允许自动调整大小

jquery - 带有子导航的菜单的垂直滚动条

javascript - 我如何在 Div 的 HOVER 上使它在 div 上淡出

安卓错误 : Unable to merge dex