javascript - 从 Javascript 对象获取值

标签 javascript

我将一些值从 anchor 标记传递给 JavaScript 函数,如下所示:

    <a href="http:///www.example.com" data-json='{ "next_id": 3, "prev_id":1}' id="2">Click here</a>

js 函数看起来有点像这样:

$(document).on( 'click', 'a', function( event ) {
    console.log($(this).data());
    var this_id = this.id;
    var next_id = $(this).data(next_id);
    var prev_id = $(this).data(prev_id);
}

控制台显示 $(this).data() 的以下内容

Object {json: Object}
    json: Object
        next_id: 3
        prev_id: 1

但是任何读取 next_id 或 prev_id 值的尝试都会失败:

var prev_id = $(this).data(prev_id);

仅返回[object Object]

var prev_id = $(this).data("prev_id"); 

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

返回未定义

我认为我错过了一些相当明显的东西 - 非常感谢任何指点

最佳答案

您需要使用 .data(key) 获取 JSON其中keyjson,那么您可以获取next_idprev_id属性。

使用

 var next_id = $(this).data('json').next_id;

关于javascript - 从 Javascript 对象获取值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37459508/

相关文章:

javascript - 如何定义一个函数以便稍后在 Jquery 中使用它

javascript - 是否可以使用 html5 将 MediaStream 转换为视频 blob

javascript - 使用 'this' 的正确方法(jshint.com 已验证)分配给 var

javascript - 在javascript中为选择框添加类

javascript - Gulp - 在子文件夹中编译 scss 文件

javascript - 为什么 JavaScript Math.log(1.001) 返回错误值?

javascript - Chrome 会自动将我的 mvc View 滚动到顶部

javascript - 使用 Vue.js 在其他函数中调用 onclick 函数

javascript - Node.js 表达嵌套路由

javascript - 这段代码的含义是什么?