Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 用户选择从今天起10年的日期jquery datepicker_Javascript_Jquery_Html_Date_Datepicker - Fatal编程技术网

Javascript 用户选择从今天起10年的日期jquery datepicker

Javascript 用户选择从今天起10年的日期jquery datepicker,javascript,jquery,html,date,datepicker,Javascript,Jquery,Html,Date,Datepicker,在当前代码中使用jquery日期选择器。我希望datepicker应该显示从1900年到今天的日期,如果用户选择昨天的日期、今天的日期或一个月前的日期,则用户必须选择从今天开始的前10年的日期。eror msg应该填充在错误消息字段中 这是我当前的Jquery代码 $(function() { $( "#datepicker" ).datepicker({ changeMonth: true, changeYear: true, y

在当前代码中使用jquery日期选择器。我希望datepicker应该显示从1900年到今天的日期,如果用户选择昨天的日期、今天的日期或一个月前的日期,则用户必须选择从今天开始的前10年的日期。eror msg应该填充在错误消息字段中

这是我当前的Jquery代码

$(function() {
    $( "#datepicker" ).datepicker({
          changeMonth: true,
          changeYear: true,
        yearRange: '-115:+1M'
    }).on('change',function(){
        alert("check");
    });
 });
这是小提琴

请帮帮我

谢谢和问候
Mahadevan

您可以在日期选择器本身提供的onSelect:fn{}中进行所有计算。您可以从所选函数的参数名中获取所选的值,我已经给它起了一个名称date。现在,当您从这里获取日期时,可以将其转换为dateObject以从中提取年份,这与使用新的date对象获取当前年份的方式相同

$function{ $datepicker.datepicker{ 变化月:对, 变化年:是的, 年份范围:'-115:+0百万', onSelect:functiondate{//绑定内置onSelect事件 //这将为您获取所选日期 var selYear=new Datedate.getFullYear;//获取所选日期的完整年份 var currYear=new Date.getFullYear;//获取当前年份 如果curryyear-selYear>10{//请在if条件下检查10年 $'display_error'.html'您应该只选择过去10年的日期'; 这个.value=; } } }; }; 日期:

好的,试试这把小提琴

它正在工作

Javascript


让我知道它是否工作

用户必须选择从今天开始的10年日期不是吗?这应该在计算当前日期时自动完成,这会更好。10年之前还是10年之后?用户必须选择10年之前清楚。从10年前到本年,还是所有年份都应该在10年前?您需要从哪一年到哪一年?@Rajeshkannan很抱歉,事实上我希望日期选择器应该显示从1900年到今天的日期,但是如果用户必须选择从今天起10年的日期,如果用户选择昨天的日期、今天的日期或一个月前的日期,eror msg应该填充银行以获得回复,但我必须显示从1900年开始的年份-当前日期,但用户必须选择从今天开始的前10年日期。我可以问一下原因吗?因为只显示10年在选择日期时有一个有限的错误范围。根据我当前工作的范围,我必须向用户显示到今天日期:但该字段应接受从今天日期算起的10年。它工作正常,但一个小查询是,提供的未来日期可能会被禁用。啊,您可以通过maxdate:new DateI我已经更新了上面的代码,现在还可以检查jsfiddle链接
$(function() {
        $( "#datepicker" ).datepicker({
              changeMonth: true,
              changeYear: true,
            yearRange: '-115:+1M',
            maxDate:new Date(),
        }).on('change',function(){
            today = new Date();
            tenYearBefore = new Date().setYear(new Date().getFullYear() -10);
            selected = new Date($(this).val());
           if(selected>tenYearBefore) {
            $(".display_error").show();   
           } else {
               $(".display_error").hide();
           }
        });
  });