jQuery拆分文本

时间:2012-07-26 15:29:46

标签: javascript jquery

我有一个信用卡字段,用于填充<span>标记,例如

<span>****-****-****-1111 (Expires 12/2012)</span>

我需要提取日期并查明它是否过去。

目前我有下面的jQuery但是我被困在split()的位置以提取日期。

var $selectedDate = $('.prev-card .chzn-container .chzn-single span').text().split();
var $now = new Date();
if ($selectedDate < $now) {
    alert('past')
}
else{
    alert('future')
}

我认为这涵盖了一切,但随时可以要求更多信息

3 个答案:

答案 0 :(得分:2)

试试这个:

var selectedDate = $("...").text().match(/Expires (\d+)\/(\d+)/),
    expires = new Date(selectedDate[2],selectedDate[1]-1,1,0,0,0),
    now = new Date();
if( expires.getTime() < now.getTime()) alert("past");
else alert("future");

答案 1 :(得分:1)

对Kolink的答案的小修正:

var selectedDate = $("...").text().match(/Expires (\d+)\/(\d+)/),
    expires = new Date(selectedDate[2],selectedDate[1]-1,1,0,0,0),
    now = new Date();
if( expires.getTime() < now.getTime()) alert("past");
else alert("future");

(regexp不需要引号)

答案 2 :(得分:0)

我不会拆分它。我会使用正则表达式:

var value = $('.prev-card .chzn-container .chzn-single span').text();
/\d+\/\d+/.exec(value)   //["12/2012"]