首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在json2html中访问数组名称

如何在json2html中访问数组名称
EN

Stack Overflow用户
提问于 2014-12-18 15:16:31
回答 3查看 296关注 0票数 0

我有以下可用的代码:

代码语言:javascript
复制
var transforms = {
   'renderTimeline':[  {
       tag: "a",  
       class: "btn btn-warning btn-circle", 
       style: "float: right;", 
       html: "<i class=\"icon-remove\"></i>",
       "onclick": function(e) {
       delSchedule(e);
     }}
  }]
}

如果我正在传递以下json:

代码语言:javascript
复制
{ monday:[ { startTime:10:00, endTime: 12:00, room_id:cse124 }, { startTime:13:00, endTime: 15:00, room_id:lotus } ] }

我像这样调用转换:

代码语言:javascript
复制
$('#someplace').json2html(data.monday, transforms.renderTimeline, {'events': true});

我希望能够在函数delSchedule()中访问“星期一”。我该怎么做呢?请帮帮忙。

EN

回答 3

Stack Overflow用户

发布于 2014-12-18 15:19:45

那不是json。它是原生Object

代码语言:javascript
复制
"onclick": function(e) {
    var obj = {
        monday: [{
            startTime: 10: 00,
            endTime: 12: 00,
            room_id: cse124
        }, {
            startTime: 13: 00,
            endTime: 15: 00,
            room_id: lotus
        }]
    };
    delSchedule(obj.monday); // pass it here
}

如果它是用JSON编写的,那就没什么大不了的。只需执行delSchedule(JSON.parse(jsonStr).monday)

票数 0
EN

Stack Overflow用户

发布于 2014-12-18 15:22:02

我认为首先需要使用jQuery.parseJSON()来解析Json。然后它将返回一个对象。

var jObject = jQuery.parseJSON(jsonData);

var星期一= jObject.monday;

票数 0
EN

Stack Overflow用户

发布于 2014-12-19 04:55:26

看看json2html.com,它描述了在Attributes->jquery->Event Attributes中传递给delSchedule(e)的"e“参数的可用属性

为了回答你的问题,你的delSchedule应该是这样的

代码语言:javascript
复制
function delSchedule(e) {
     console.log( e.obj );
}

e.obj将返回什么?这取决于您要转换的JSON对象。例如

代码语言:javascript
复制
$('#someplace').json2html(data, transforms.renderTimeline);

将创建一个元素,并

代码语言:javascript
复制
e.obj === { monday:[ { startTime:10:00, endTime: 12:00, room_id:cse124 }, { startTime:13:00, endTime: 15:00, room_id:lotus } ] }

使用

代码语言:javascript
复制
$('#someplace').json2html(data.monday, transforms.renderTimeline);

将创建两个元素,每个元素都将具有

代码语言:javascript
复制
e.obj === { startTime:10:00, endTime: 12:00, room_id:cse124 }
e.obj === { startTime:13:00, endTime: 15:00, room_id:lotus }

仅供参考,您的转换不需要events:true选项..仅当您直接使用json2html.transform函数时才会出现这种情况

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27541105

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档