2017-04-05 41 views
0

我怎樣才能插入明天的daystartTimeendTime到爲setupOrderingNotAvailable功能內容的消息,如果今天的dayendTime已過期?現在消息setupOrderingNotAvailable「明天從上午11點到下午9點再說」但這不是每天都是這樣的;這是我想插入明天的時間。動態插入值轉換爲註釋字符串使用jQuery

代碼

var days = { 
    '1': {startTime: '4:00 PM', endTime: '8:00 PM'}, 
    '2': {startTime: '11:00 AM', endTime: '9:00 PM'}, 
    '3': {startTime: '11:00 AM', endTime: '9:00 PM'}, 
    '4': {startTime: '11:00 AM', endTime: '4:00 PM'}, 
    '5': {startTime: '11:00 AM', endTime: '10:00 PM'}, 
    '6': {startTime: '12:00 PM', endTime: '10:00 PM'}, 
    '7': {startTime: '12:00 PM', endTime: '8:00 PM'}, 
}; 

var curr_day = new Date().getDay(); 
var curr_time = getval(); 
var orderIsAvailable = false; 
var day = days[curr_day]; 

// 
function setupOrderingAvailable() { 
    document.querySelector('#alert-success').onclick = function() { 
     $.sweetModal({ 
      content: '<h2>Online Ordering is Available!</h2>' + 
       'Please click the button below to begin your online order.' + 
       '<div class="sweet-modal-buttons"><a href="http://pizzospizzeria.hungerrush.com" target="_blank" class="button greenB">Start Order</a></div>', 
      // icon: $.sweetModal.ICON_SUCCESS 
     }); 
    }; 
} 

// Need to make this a function that inserts tomorrows startTime and endTime into message if todays endTime has passed 
function setupOrderingNotAvailable() { 
    document.querySelector('#alert-success').onclick = function() { 
     $.sweetModal({ 
      content: '<h2>Online Ordering is Not Available</h2>' + 
       'Online ordering will be available again tomorrow from 11:00am to 9:00pm', 
      buttons: [{ 
       label: 'Close', 
       classes: 'redB' 
      }] 
     }); 
    }; 
} 
if (day) { 
    if (get24Hr(curr_time) > get24Hr(day.startTime) && get24Hr(curr_time) < get24Hr(day.endTime)) { 
     orderingIsAvailable = true; 
    } else { 
     document.querySelector('#alert-success').onclick = function() { 
      $.sweetModal({ 
       content: '<h2>Online Ordering is Not Available</h2>' + 
        'Online ordering will be available again tomorrow from 11:00am to 9:00pm', 
       buttons: [{ 
        label: 'Close', 
        classes: 'redB' 
       }] 
      }); 
     } 
    } 
} 

if (orderingIsAvailable) { 
    setupOrderingAvailable(); 
} else { 
    setupOrderingNotAvailable(); 
} 
+0

所以,呃... json弦在哪裏?你的意思是對象嗎?這兩個是不一樣的。 –

+0

對不起,內容消息。 –

+0

從明天的「日」獲取時間,然後連接成消息。你不確定如何組合字符串? –

回答

1

我清理的時間比較代碼一點通過確定毫秒的開始和結束的時間。這允許清潔器(IMO)比較時間現在作爲數字與開始和結束時間。從Date對象返回的整數的範圍是0-6,所以我也更新了它。

從那裏,你做比較,如果訂貨現在不能發生

這裏有一個小提琴,儘管剝離出來的sweetModal方面,但創建的字符串一樣的,無論你如何顯示它。

https://jsfiddle.net/wx97g6x1/2/

var days = { 
    0: { 
    startTime: '4:00 PM', 
    endTime: '8:00 PM' 
    }, 
    1: { 
    startTime: '11:00 AM', 
    endTime: '9:00 PM' 
    }, 
    2: { 
    startTime: '11:00 AM', 
    endTime: '9:00 PM' 
    }, 
    3: { 
    startTime: '11:00 AM', 
    endTime: '4:00 PM' 
    }, 
    4: { 
    startTime: '11:00 AM', 
    endTime: '10:00 PM' 
    }, 
    5: { 
    startTime: '12:00 PM', 
    endTime: '10:00 PM' 
    }, 
    6: { 
    startTime: '12:00 PM', 
    endTime: '8:00 PM' 
    } 
}; 

var now = new Date(); 
var time = now.getTime(); 
var day = days[now.getDay()]; 

var startToday = Date.parse(now.toDateString() + ' ' + day.startTime); 
var endToday = Date.parse(now.toDateString() + ' ' + day.endTime); 

function setupOrderingAvailable() { 
    console.log('Online Ordering is Available!'); 
} 

function setupOrderingNotAvailable() { 
    var tomorrow = days[now.getDay() + 1]; 
    console.log('Online ordering will be available again tomorrow from '+ tomorrow.startTime +' to '+ tomorrow.endTime) 
} 

if (time > startToday && time < endToday) { 
    setupOrderingAvailable(); 
} else { 
    setupOrderingNotAvailable(); 
} 
0

查找到Template Literals

const days = { 
    '1': { start: 1, end: 2 }, 
    '2': { start: 3, end: 4 } 
} 
const string = `day 2 starts at: ${days['2'].start} and ends at: ${days['2'].end}` 
console.log(string); // "day 2 starts at: 3 and ends at: 4" 

除了使用的事實,每一天的 「價值」 是比以前更大的1。