2017-11-16 4 views
0

選択した日の後の日を送信します。JQuery DatePickerで+1日を送信

$('#toDate').datepicker({ 
     inline: true, 
     altField: '#x', 
     dateFormat: "dd-mm-yy", //day 
     altFormat: "yy-mm-dd", //year 
     monthNames: ["Ocak", "Şubat", "Mart", "Nisan", "Mayıs", "Haziran", "Temmuz", "Ağustos", "Eylül", "Ekim", "Kasım", "Aralık"], 
     dayNamesMin: ["Pa", "Pt", "Sl", "Ça", "Pe", "Cu", "Ct"], 
     firstDay: 1, 
     numberOfMonths: 1, 
     onSelect: function(dateText, inst) { 
      socket.emit('sockettoDate', $('#x').val()); 
     } 
     }); 

が選択された '2017年11月16日' 場合、私は'2017年11月17日'を発するようにしたいです。それを行う方法はありますか?

答えて

1

次のコードは、あなたのために働く必要があります。

$('#toDate').datepicker({ 
    inline: true, 
    altField: '#x', 
    dateFormat: "dd-mm-yy", //day 
    altFormat: "yy-mm-dd", //year 
    monthNames: ["Ocak", "Şubat", "Mart", "Nisan", "Mayıs", "Haziran", "Temmuz", "Ağustos", "Eylül", "Ekim", "Kasım", "Aralık"], 
    dayNamesMin: ["Pa", "Pt", "Sl", "Ça", "Pe", "Cu", "Ct"], 
    firstDay: 1, 
    numberOfMonths: 1, 
    onSelect: function(dateText, inst) { 
     var dateup = ('0' + (parseInt(inst.selectedDay) + 1)).slice(-2); 
     var monthup = ('0' + (parseInt(inst.selectedMonth) + 1)).slice(-2); 
     var newdate = inst.selectedYear+'-'+monthup+'-'+dateup; 
     socket.emit('sockettoDate', newdate); 
    } 
}); 
+0

月の最終日より後の日を計算することはできません。例えば、 '2017-12-31'が選択された場合、結果は' 2017-12-32'です。どんな解決策ですか? – ilvthsgm

0

2つの入力ボックスがあります。しかし、いつでも1つしか見えません。

私は日付の変更後に区別できるように別のラベルを追加しました。

あなたのニーズに合わせて調整してください。

$('#toDate').datepicker({ 
 
     inline: true, 
 
     altField: '#x', 
 
     dateFormat: "dd-mm-yy", //day 
 
     altFormat: "yy-mm-dd", //year 
 
     monthNames: ["Ocak", "Şubat", "Mart", "Nisan", "Mayıs", "Haziran", "Temmuz", "Ağustos", "Eylül", "Ekim", "Kasım", "Aralık"], 
 
     dayNamesMin: ["Pa", "Pt", "Sl", "Ça", "Pe", "Cu", "Ct"], 
 
     firstDay: 1, 
 
     numberOfMonths: 1, 
 
     onSelect: function(dateText, inst) {    
 
      showHideDate(dateText); 
 
     } 
 
     }); 
 
    
 
function showHideDate(dateText) { 
 
    document.getElementById("defaultDate").style.display = "none"; 
 
    document.getElementById("hiddenDate").style.display = "block"; 
 
    let splittedDate = dateText.split("-"); 
 
    let nextDay = parseInt(splittedDate[0])+1 
 
    let newDate = nextDay + '-' + splittedDate[1] + '-' + splittedDate[2]; 
 
    
 
    document.getElementById("newDate").value = newDate; 
 
}
#hiddenDate { 
 
    display:none; 
 
}
<script src="https://code.jquery.com/jquery-1.12.4.js"></script> 
 
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script> 
 
<p id="defaultDate">Date: <input type="text" id="toDate"></p> 
 
<p id="hiddenDate">New Date: <input type="text" id="newDate"></p>

+0

は誤解があります。私は編集した日をサーバーに送りたい。とにかく、ありがとうございました。 – ilvthsgm

+0

次回はクリアしてください。 –

関連する問題