Javascript 将|(管道)分隔的时间戳列表转换为Sencha Touch 2中的日期选择下拉菜单

Javascript 将|(管道)分隔的时间戳列表转换为Sencha Touch 2中的日期选择下拉菜单,javascript,json,extjs,sencha-touch,sencha-touch-2,Javascript,Json,Extjs,Sencha Touch,Sencha Touch 2,我的Sencha Touch 2 web/mobile应用程序正在读取JSON,其中一个元素是由竖条分隔的毫秒时间戳列表。我想将这些时间戳转换成一种人类可读的形式(日、月、小时),并在我的表单中的选择菜单中显示它们 目前,我有一个表单按原样显示数据。我知道如何用项目实现下拉列表,但在进行日期-时间转换和用新转换的项目填充下拉列表时遇到了问题 我的JSON如下所示:“访问时间”:“1394416800 | 1394445600 | 1394460000 |” 我的Sencha Touch表单如下所

我的Sencha Touch 2 web/mobile应用程序正在读取JSON,其中一个元素是由竖条分隔的毫秒时间戳列表。我想将这些时间戳转换成一种人类可读的形式(日、月、小时),并在我的表单中的选择菜单中显示它们

目前,我有一个表单按原样显示数据。我知道如何用项目实现下拉列表,但在进行日期-时间转换和用新转换的项目填充下拉列表时遇到了问题

我的JSON如下所示:
“访问时间”:“1394416800 | 1394445600 | 1394460000 |”

我的Sencha Touch表单如下所示:

{
xtype: 'fieldset',
readOnly: true,
title: 'Visit Information:',
items: [
    {
        name: 'from',
        id: 'from',
        xtype: 'textareafield',
        label: 'From',
        readOnly: true
    },
    {
        name: 'to',
        id: 'to',
        xtype: 'textareafield',
        label: 'To',
        readOnly: true
    },
    {
        name: 'visit-time',
        id: 'visit-time',
        xtype: 'textareafield',
        label: 'Visit Time',
        readOnly: true
    }
]
},

基本上,你必须用你的日期填充一个选项

你必须:

  • 获取访问时间,并使用

  • 使用删除将为空的数组的最后一个元素

  • 为每个时间戳创建一个日期对象,其中包含:
    newdate(parseInt(timestamp)*1000)

  • 使用
    Ext.Date.Format(日期,格式字符串)格式化日期检查文档中的格式字符串


当你将格式化日期放入一个数组时,出于好奇,你可以使用

填充字段的存储,为什么后端会这样发送数据?@Evantimboli问得好,不幸的是我无法控制这一点(尽管我确实与制作全尺寸网站的人进行了一些沟通)。这更多的是针对手机方面的事情,但在主网站上,用户可以选择一个日期/时间,并确认多个日期和时间。我猜他这样做是为了向每个用户显示本地时间?您是否通过ajax加载数据?模型加载?jsonp代理,加载到模型中。@AmruE。你能对我的回答给出一些反馈吗?有帮助吗?