2

使用 jQuery 从返回的数据集中去除时间的有效方法是什么?由于订购目的,我需要时间存在于数据库中,但是我只需要显示日期。

<adopt_date>Apr 25 2013 2:41PM</adopt_date>是我的 Web 服务的结果示例。

以下是我目前如何使用这些信息,如果有帮助的话:

var adopted_date = $(this).find('adopt_date').text();

其中 $(this) 是数据集。

谢谢!

4

4 回答 4

6

尝试这个:

$("adopt_date").html(function (index, value) {
    return value.replace(/\d{1,2}:\d{2}(AM|PM)/ig, '');
});

小提琴

于 2013-04-26T18:50:47.617 回答
3

你可以用纯 JavaScript 做到这一点:

adopted_date = adopted_date.replace(/ [0-9]*[0-9]:[0-9][0-9]A*P*M/,'');

jsFiddle 示例

于 2013-04-26T18:50:32.303 回答
3

假设您无法控制您收到的数据,并且只能选择在客户端解析它,这是一种实用的方法:

用空格分割并弹出最后一个。

var adopted_date = $(this).find('adopt_date').text().split(' ');
adopted_date.pop();
adopted_date = adopted_date.join(' ');

翻译成英文,意思是

  • 用空格字符分割收养日期的文本(变成一个数组)
  • 使用 .pop() 从数组中删除最后一项(恰好是时间)
  • 然后将数组连接回字符串,使用空格作为分隔符

在一天结束时,缺少咖啡,我会先把它吐出来,收工,第二天,一杯好咖啡,并像其他答案一样使用正则表达式来改进它。

于 2013-04-26T18:50:39.680 回答
0

我知道这为时已晚,但任何人来这里寻求答案,这里是一个班轮: adopted_date.toDateString();

于 2017-08-27T14:46:09.277 回答