如何为jquery ui时间选择器动态设置hourMin, miniteMin值,比如如果日期是今天,我想允许用户只选择当前时间&如果日期大于当前日期,则允许用户从0 - 23小时进行选择。
我试过这个代码,但不工作
$('#test1').timepicker({
hourMin: 0,
hourMax: 23
});
$("#test").datepicker({
dateFormat: 'dd/mm/yy',
onSelect:function(selectedDate){
if(selectedDate == $.datepicker.formatDate('dd/mm/yy', new Date())){
$('#test1').timepicker('option','hourMin', new Date().getHours());
}else{
$('#test1').timepicker('option','hourMin', 0);
}
}
});
如果这个插件有任何问题,谁能建议最好的插件,适合我的要求。
如果这个(http://trentrichardson.com/examples/timepicker/)是你正在使用的插件,那么是的,有一个选项。
http://trentrichardson.com/examples/timepicker/rest_examples
var nowDate = new Date();
$('#rest_example_3').datetimepicker({
minDate: new Date(nowDate.getFullYear(), nowDate.getMonth(), nowDate.getDate(), nowDate.getHours(),nowDate.getMinutes(), nowDate.getSeconds(), 0)
});
你可以设置minDateTime(或minDate)来实现你想要的。
编辑:在运行时重置日期选择器初始化的示例解决方案(hack):
Javascript: function initDP()
{
var nowDate = new Date();
$('#dpField').datetimepicker({
minDate: new Date(nowDate.getFullYear(), nowDate.getMonth(), nowDate.getDate(), nowDate.getHours(), nowDate.getMinutes(), 0, 0)
});
}
function resetDP()
{
$('#dpField').die();
$('#dpField').remove();
$('#parentId').append('<input type="text" id="dpField" />');
initDP();
}
$(document).ready(function()
{
initDP();
$('#resetDate').click(function(){
resetDP();
});
});
</script>
Html: <body>
<div id="parentId">
<input type="text" id="dpField" />
</div>
<button id="resetDate">Reset DP</button>
</body>