【发布时间】:2019-04-15 00:10:42
【问题描述】:
我有一个日期选择器 jquery 函数
$("#txtFrom").datepicker({
beforeShowDay: $.datepicker.noWeekends,
numberOfMonths: 1,
minDate: sprint_select(),
maxDate: $( '#d_id' ).val(),
onSelect: function (selected) {
var dt = new Date(selected);
$("#txtTo").datepicker("option", "minDate", dt);
}
});
这里我设置minDate: sprint_select(),调用函数sprint_select.So
function sprint_select(){
var r_id=$('#r_id').val();
var dataString = { r_id: r_id}
$.ajax({
url: "/manage/scrum/getsprintprd",
method: "POST",
data: dataString,
// dataType: "json",
//cache: false,
success: function (data)
{
//var values= $.trim(data).split("-");
var values1 = '2018-11-09'.split("-");
var parsed_date = new Date(values[0], values[1]-1, values[2]);
return parsed_date;
}
});
}
在这里我成功返回 parsed_date。但日历最小日期没有变化。任何帮助将不胜感激。
【问题讨论】:
-
你这里有不同的地方出错,我建议你看看this topic about how to return value from async function(ajax 调用是异步的)。因此,简单来说,您的
sprint_select()在创建 datepicker 时还没有回答,实际上它没有回答,因为 succes 函数中的return返回success而不是sprint_select。 -
在 ajax 中添加您的
datepicker创建success handler -
您可以在AJAX请求的
success回调中设置minDate的值。 -
@Alexander 谢谢我明白了
标签: javascript php jquery datepicker