Sto provando a fare una semplice pagina che richiede una data (tipo di input TEXT), e una volta inserita la data, un altro campo aggiungerà 7 giorni all'input e visualizzare la data (+7 giorni) in un inserimento di testo. La mia conoscenza di jQuery è limitata, quindi potrei avere un piccolo bug ...jQuery aggiungi 7 giorni alla data (testo del tipo di input e output)
<html>
<head>
<title>Date Plus 7 Days</title>
<script type="text/javascript">
$(document).ready(function(){
function DateFromString(str){
str = str.split(/\D+/);
str = new Date(str[2],str[0]-1,(parseInt(str[1])+7));
return MMDDYYYY(str);
}
function MMDDYYYY(str) {
var ndateArr = str.toString().split(' ');
var Months = 'Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec';
return (parseInt(Months.indexOf(ndateArr[1])/4)+1)+'/'+ndateArr[2]+'/'+ndateArr[3];
}
function Add7Days() {
var date = $('#start_date').val();
var ndate = DateFromString(date);
return ndate;
}
$('#start_date').change(function(){
$('#end_date') = Add7Days();
})
});
</script>
</head>
<body>
Start Date
<input type="text" id="start_date" value=''>
<br>
End date
<input type="text" id="end_date" value=''>
</body>
</html>
Cosa ho fatto di sbagliato?
Grazie!
Te ne stai andando in su all'utente di inserire la data nel formato che ci si aspetta. Non dovresti mai fidarti dell'utente. Dal momento che stai già sfruttando jQuery dai un'occhiata al datapicker dell'interfaccia utente jQuery. Questo ti darà un calendario e valori di immissione delle date molto più affidabili. – Brombomb