由于項目需要的開始時間由背景擷取,最大時間是目前時間,從背景擷取的時間格式為 2019-11-15 17:10,一開始的代碼擷取的時間實際是 new Date(2019-11-15 17:10) ,這在安卓端是可以正常識别的,在ios端就不生效了。是以把對應日期時間的值逐個擷取出來,按照new Date(year, month, day, time, hour) 這種格式設定就可以了。
ios不能識别的部分源碼:
var picker = new mui.DtPicker({
type: "datetime",//設定月曆初始視圖模式
beginDate: new Date(jiedantime),//設定開始日期
endDate: new Date(year, month, day, time, hour),//設定最大日期
});
ios能識别的部分源碼,貼的比較多,友善以後回憶:
//維修時間限制
var $timeStart = document.getElementById('startDate');
var $timeEnd = document.getElementById('endDate');
$timeStart.addEventListener('tap', function() {
var _self = this;
console.log(_self);
if(_self.picker) {
_self.picker.show(function(rs) {
// timeStart.innerHTML = rs.text; //改變div的值
$timestart.innerHTML = rs.text;
console.log('選擇的日期為:' + rs.text);
_self.picker.dispose();
_self.picker = null;
});
} else {
var optionsJson = this.getAttribute('data-options') || '{}';
var options = JSON.parse(optionsJson);
var id = this.getAttribute('id');
var jiedantime = document.getElementById("jiedan").value;//擷取實際接單時間
var nian = jiedantime.substring(0,4);
var yue = jiedantime.substring(5,7) - 1;
var ri = jiedantime.substring(8,10);
var shi = jiedantime.substring(11,13);
var fen = jiedantime.substring(14,16);
console.log('實際接單時間:' + jiedantime);
// console.log('年:' + nian);
// console.log('月:' + yue);
// console.log('日:' + ri);
// console.log('時:' + shi);
// console.log('分:' + fen);
//擷取目前時間
var year=new Date().getFullYear() ;
var month=new Date().getMonth() ;
var day=new Date().getDate();
var time =new Date().getHours();
var hour =new Date().getMinutes();
var picker = new mui.DtPicker({
type: "datetime",//設定月曆初始視圖模式
beginDate: new Date(nian, yue, ri, shi, fen),//設定開始日期
endDate: new Date(year, month, day, time, hour),//設定最大日期
});
picker.show(function(rs) {
/*result.innerText = '選擇結果: ' + rs.text;*/
$timeStart.innerHTML = rs.text+":00";
document.getElementById("startDateInput").value = rs.text+":00";
console.log('選擇的日期為:' + rs.text);
picker.dispose();
picker = null;
});
}
},false);