Javascript 添加带整数的日期选择器日期
我的代码有三个字段 日期选择器 整数值的输入字段 显示结果日期的输入框。 我选择datepicker日期,它以dd/mm/yyyy格式读取,比如说2018年2月6日。现在,我在下一个输入框中输入一个整数值,然后单击一个按钮,在将整数添加到所选日期后显示结果日期。在结果中,我的日期以mm dd yyyy格式显示,并将该整数添加到所选日期的月份部分,即,如果我在所选日期2018年2月6日后添加3天,则应显示2018年2月9日,但结果日期显示为2018年5月6日 如何解决这个问题?欢迎有任何见解和意见 注册参数 日期: 新成立日期: 延期天数: $document.readyfunction{ $'txtDate'。日期选择器{ 日期格式:'mm/dd/yy', }; }; 函数getdate{ var tt=document.getElementById'txtDate'。值; var input=document.getElementById'extdays'。值; 如果输入==| |输入==null{ 输入=0 } 伊夫特!={ var日期=新日期; var newdate=newdatett; newdate.setDatenewdate.getDate+parseIntinput; var dd=newdate.getDate; var mm=newdate.getMonth+1; 变量y=newdate.getFullYear; var someFormattedDate=mm+'/'+dd+'/'+y; document.getElementById'follow_Date'。value=someFormattedDate; } } 改变 到 所以你得到了你想要的结果。我做了一些修改,现在它正在工作。检查这个答案 日期: 新成立日期: 延期天数: $document.readyfunction{ $'txtDate'。日期选择器{ 日期格式:'mm/dd/yy', }; }; 函数getdate{ var tt=document.getElementById'txtDate'。值; var input=document.getElementById'extdays'。值; 如果输入==| |输入==null{ 输入=0 } 伊夫特!={ var日期=新日期; var newdate=newdatett; newdate.setDatenewdate.getDate+parseIntinput; var dd=newdate.getDate; var mm=newdate.getMonth+1; 变量y=newdate.getFullYear; var someFormattedDate=mm+'/'+dd+'/'+y; document.getElementById'follow_Date'。value=someFormattedDate; } } 希望这会有所帮助 日期: 新成立日期: 延期天数: $document.readyfunction{ $'txtDate'。日期选择器{ 日期格式:'mm/dd/yy', }; }; 函数getdate{ var tt=document.getElementById'txtDate'。值; var input=document.getElementById'extdays'。值; 如果输入==| |输入==null{ 输入=0 } 伊夫特!={ var日期=新日期; var newdate=newdatett; newdate.setDatenewdate.getDate+parseIntinput; var dd=newdate.getDate; var mm=newdate.getMonth+1; 变量y=newdate.getFullYear; var someFormattedDate=dd+'/'+mm+'/'+y; document.getElementById'follow_Date'。value=someFormattedDate; } }Javascript 添加带整数的日期选择器日期,javascript,jquery,jquery-ui,datepicker,jquery-ui-datepicker,Javascript,Jquery,Jquery Ui,Datepicker,Jquery Ui Datepicker,我的代码有三个字段 日期选择器 整数值的输入字段 显示结果日期的输入框。 我选择datepicker日期,它以dd/mm/yyyy格式读取,比如说2018年2月6日。现在,我在下一个输入框中输入一个整数值,然后单击一个按钮,在将整数添加到所选日期后显示结果日期。在结果中,我的日期以mm dd yyyy格式显示,并将该整数添加到所选日期的月份部分,即,如果我在所选日期2018年2月6日后添加3天,则应显示2018年2月9日,但结果日期显示为2018年5月6日 如何解决这个问题?欢迎有任何见解和意见
您好,您需要将日期字符串解析为日期-
tt = $.datepicker.parseDate("dd/mm/yy",tt);
您更新的脚本是-
function getdate() {
var tt = document.getElementById('txtDate').value;
var input = document.getElementById('extdays').value;
if (input == "" || input==null){
input =0
}
if(tt != ''){
tt = $.datepicker.parseDate("dd/mm/yy",tt);
var date = new Date(tt);
var newdate = new Date(tt);
newdate.setDate(newdate.getDate() + parseInt(input));
var dd = newdate.getDate();
var mm = newdate.getMonth() + 1;
var y = newdate.getFullYear();
var someFormattedDate = mm + '/' + dd + '/' + y;
document.getElementById('follow_Date').value = someFormattedDate;
}
}
终于得到了结果。必须解析输入日期并转换
<script>
$(document).ready(function () {
$( "#txtDate" ).datepicker({
//dateFormat: "dd/mm/yy"
dateFormat: "dd/mm/yy"
});
});
function getdate() {
var tt = document.getElementById('txtDate').value;
var input = document.getElementById('extdays').value;
if (input == "" || input==null)
{
input =0
}
var initial = tt.split(/\//).reverse().join('/'); // to change the format
var date = new Date(initial);
var newdate = new Date(date);
newdate.setDate(newdate.getDate() + parseInt(input));
var dd = newdate.getDate();
var mm = newdate.getMonth() + 1;
var y = newdate.getFullYear();
var someFormattedDate = dd + '/' + mm + '/' + y;
document.getElementById('follow_Date').value = someFormattedDate;
}
</script>
我也试过这个。您发布的代码片段与我的脚本的功能相同。是的,我做了一些更改。一个是从代码中删除jquery.min.js是的,我看到了。但还是朋友。由于日期格式的原因,它正在执行相同的操作,请使用mm/dd/yy格式检查它是否正常工作。我正在检查dd/mm/yy格式我已经应用了这两种格式,但结果保持完全相同;在脚本代码中,code.console.logsomeFormattedDate表示未定义$.datepicker。是的,您的小提琴工作正常。对于我来说,正如我前面所说,console.logsomeFormattedDate表示$。datepicker是未定义的 内德。
function getdate() {
var tt = document.getElementById('txtDate').value;
var input = document.getElementById('extdays').value;
if (input == "" || input==null){
input =0
}
if(tt != ''){
tt = $.datepicker.parseDate("dd/mm/yy",tt);
var date = new Date(tt);
var newdate = new Date(tt);
newdate.setDate(newdate.getDate() + parseInt(input));
var dd = newdate.getDate();
var mm = newdate.getMonth() + 1;
var y = newdate.getFullYear();
var someFormattedDate = mm + '/' + dd + '/' + y;
document.getElementById('follow_Date').value = someFormattedDate;
}
}
<script>
$(document).ready(function () {
$( "#txtDate" ).datepicker({
//dateFormat: "dd/mm/yy"
dateFormat: "dd/mm/yy"
});
});
function getdate() {
var tt = document.getElementById('txtDate').value;
var input = document.getElementById('extdays').value;
if (input == "" || input==null)
{
input =0
}
var initial = tt.split(/\//).reverse().join('/'); // to change the format
var date = new Date(initial);
var newdate = new Date(date);
newdate.setDate(newdate.getDate() + parseInt(input));
var dd = newdate.getDate();
var mm = newdate.getMonth() + 1;
var y = newdate.getFullYear();
var someFormattedDate = dd + '/' + mm + '/' + y;
document.getElementById('follow_Date').value = someFormattedDate;
}
</script>