关于jQuery-mobile中的日期的咨询

时间:2014-08-20 06:28:58

标签: javascript jquery jquery-mobile

我需要在我的约会选择器中添加10天。

我的日期选择器代码

<label for="bday" style="text-align:right">Pick Date</label>
<input type="date" name="bday" id="bday">

如何将变量插入变量,然后将10天添加到日期?

感谢

2 个答案:

答案 0 :(得分:0)

您应该创建新的Date对象并将其指定为输入值。 使用这个construtor:

new Date(year, month, day, hours, minutes, seconds, milliseconds);

使用jQuery的代码适用于您的情况:

//Here we create a method that will format the date the way input type date wants it: 
Date.prototype.yyyymmdd = function() {
   var yyyy = this.getFullYear().toString();
   var mm = (this.getMonth()+1).toString(); // getMonth() is zero-based
   var dd  = this.getDate().toString();
   return yyyy + '-' + (mm[1]?mm:"0"+mm[0]) + '-' + (dd[1]?dd:"0"+dd[0]); // padding
  };

$(document).ready(function(){
    var bDay = new Date(1990, 2, 1, 1, 0, 0, 0);

    $('#bday').attr('value',bDay.yyyymmdd());
    var currentDate = new Date($('#bday').attr('value'));
    //Here we add 10 days
    currentDate.setDate(currentDate.getDate() + 10);
    $('#bday').attr('value',currentDate.yyyymmdd());

});

答案 1 :(得分:0)

以下是如何执行此操作(我在此示例中使用了jQuery):

<script>
jQuery(function($){
    $('#bday').change(function(){
        var newVal = new Date(Date.parse($(this).val()));
        newVal.setDate(newVal.getDate() + 10);
        $('#result').html(newVal);
    });
});
</script>

参见演示:DEMO 我知道您在移动浏览器中使用此功能,但您可以使用Google Chrome进行测试。