我有两个输入字段来放置开始日期和结束日期。我想比较日期。如果结束日期低于开始日期,我希望将结束日期增加一个月。我试图这样做,但它不起作用。
使用calandar jquery ui检查日期
From: <input type="text" id="from" />
To: <input type="text" id="to" />
if( ($("#from").val() > $("#to").val()))
{
alert('end date should be upper the start date');
$("#to").val()=incr_date($("#to"));
}
function incr_date(date_str){
var parts = date_str.split("-");
var dt = new Date(
parseInt(parts[0], 10), // year
parseInt(parts[1], 10) - 1, // month (starts with 0)
parseInt(parts[2], 10) // date
);
dt.setDate(dt.getDate() + 1);
parts[0] = "" + dt.getFullYear();
parts[1] = "" + (dt.getMonth() + 1);
if (parts[1].length < 2) {
parts[1] = "0" + parts[1];
}
parts[2] = "" + dt.getDate();
if (parts[2].length < 2) {
parts[2] = "0" + parts[2];
}
return parts.join("-");
}
答案 0 :(得分:1)
在val()方法中分配值,如下所示:
$("#to").val(incr_date($("#to")));
你不应该有一个等号。
修改强> 有关正常工作的JSFiddle,请参阅here。我在txtToControl上使用了focusout事件。
答案 1 :(得分:0)
这是设置avalue的正确方法:
$("#to").val(incr_date($("#to")));