0

我想将返回的文本拆分为一个单独的字符串,但我在 extjs 中是新手。如果有任何想法,请帮助我...谢谢

我的示例代码:

//my return "record" string is "1: 3-4-2011 to 9-4-2011"
Ext.getCmp('cboWeek').on('select', function(box, record, index) 
{    
    DateFrom = new Date(record).format('m/d/Y');//split to 3-4-2011
    DateTo = new Date(record).format('m/d/Y');  //split to 9-4-2011      
    Store.load({ params: {dateFrom : DateFrom, dateTo: DateTo }});
});
4

1 回答 1

0

我想你想要的是:

// if record is "1: 3-4-2011 to 9-4-2011"
var matches = record.match(/[0-9]+-[0-9]+-[0-9]+/g);
// matches[0] will be 3-4-2011 and matches[1] will be 9-4-2011
Store.load({ params: {dateFrom : matches[0], dateTo: matches[1] }});
</pre>

请注意:您的日期不是可以使用 Date 对象解析的,也不使用 Ext.Date.parse,因为月/日必须是 2digits,如果您设法将 3-4-2011 变为 03-04-2011 之类的东西这样做"3-4-2011".replace(/([0-9]{1})[^0-9]+/g, '0$1-')你可以使用 ext 日期的 parse 方法获取 Date 对象:Ext.Date.parse('03-04-2011', 'd-m-Y')然后你可以在 Date 对象上使用 format 方法

于 2011-06-02T08:15:15.973 回答