Pickadate default submit waarde
Als ik een datum kies en op submit klik wordt de variabele "date_submit" gevuld. Deze waarde gebruik ik om in de database weg te schrijven.
Wanneer ik meteen hierna weer op submit klik is deze weer leeg. Ik wil de POST waarde behouden voor deze variabele. Normaal zou ik gewoon checken op een post waarde en die weer echo-en in de value van de input maar deze value wordt via javascript in het DOM geplaatst door pickadate. (als ik het zo goed zeg..)
Weet iemand hoe ik dit kan doen?
Pickadate: http://amsul.ca/pickadate.js/date.htm
Mijn code tot nu toe ter verduidelijking
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
<html>
<head>
<link rel="stylesheet" href="lib/pickadate.js-3.2.2/lib/compressed/themes/default.css">
<link rel="stylesheet" href="lib/pickadate.js-3.2.2/lib/compressed/themes/default.date.css">
<script src="//ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
</head>
<body>
<form method="POST">
<input type="text" class="datepicker" name="date" value="<?php if(isset($_POST['date'])){echo $_POST['date'];}?>"/>
<input type="submit" />
</form>
<!-- test var -->
<?php print_r($_POST);?>
<script src="lib/pickadate.js-3.2.2/lib/compressed/picker.js"></script>
<script src="lib/pickadate.js-3.2.2/lib/compressed/picker.date.js"></script>
<script>
$( '.datepicker' ).pickadate({
min: true,
monthsFull: [ 'januari', 'februari', 'maart', 'april', 'mei', 'juni', 'juli', 'augustus', 'september', 'oktober', 'november', 'december' ],
monthsShort: [ 'jan', 'feb', 'maa', 'apr', 'mei', 'jun', 'jul', 'aug', 'sep', 'okt', 'nov', 'dec' ],
weekdaysFull: [ 'zondag', 'maandag', 'dinsdag', 'woensdag', 'donderdag', 'vrijdag', 'zaterdag' ],
weekdaysShort: [ 'zo', 'ma', 'di', 'wo', 'do', 'vr', 'za' ],
format: 'ddd dd mmmm yyyy',
formatSubmit: 'yyyy-mm-dd',
today: 'vandaag',
clear: false
});
</script>
</body>
</html>
<head>
<link rel="stylesheet" href="lib/pickadate.js-3.2.2/lib/compressed/themes/default.css">
<link rel="stylesheet" href="lib/pickadate.js-3.2.2/lib/compressed/themes/default.date.css">
<script src="//ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
</head>
<body>
<form method="POST">
<input type="text" class="datepicker" name="date" value="<?php if(isset($_POST['date'])){echo $_POST['date'];}?>"/>
<input type="submit" />
</form>
<!-- test var -->
<?php print_r($_POST);?>
<script src="lib/pickadate.js-3.2.2/lib/compressed/picker.js"></script>
<script src="lib/pickadate.js-3.2.2/lib/compressed/picker.date.js"></script>
<script>
$( '.datepicker' ).pickadate({
min: true,
monthsFull: [ 'januari', 'februari', 'maart', 'april', 'mei', 'juni', 'juli', 'augustus', 'september', 'oktober', 'november', 'december' ],
monthsShort: [ 'jan', 'feb', 'maa', 'apr', 'mei', 'jun', 'jul', 'aug', 'sep', 'okt', 'nov', 'dec' ],
weekdaysFull: [ 'zondag', 'maandag', 'dinsdag', 'woensdag', 'donderdag', 'vrijdag', 'zaterdag' ],
weekdaysShort: [ 'zo', 'ma', 'di', 'wo', 'do', 'vr', 'za' ],
format: 'ddd dd mmmm yyyy',
formatSubmit: 'yyyy-mm-dd',
today: 'vandaag',
clear: false
});
</script>
</body>
</html>
Gewijzigd op 17/10/2013 21:26:59 door N K
Denk dat het niet werkt omdat je "format" en "formatSubmit" instellingen van elkaar verschillen.
Format is de weergave van de datum in het input veld.
formatSubmit is de waarde voor de database.
Ja dat bedoel ik ook... Je probeert nu je database format weer te geven, maar dat herkent hij niet als een datum.
Uiteindelijk is onderstaand de html. Het gaat me meer om die hidden input die pickadate er zelf bij zet. Deze waarde wordt leeggemaakt na het opnieuw submitten.
Kun je niet gewoon dit doen?
Code (php)
Als ik dat doe dan laat het DOM dit zien wat helemaal niet werkt.
Code (php)
1
2
3
4
5
2
3
4
5
<form method="POST">
<input type="text" class="datepicker picker__input picker__input--active" name="date" value="do 25 oktober 2013" readonly="">
<input type="hidden" name="date_submit" value="2013-10-25">
<input type="hidden" name="date_submit" value="">
</form>
<input type="text" class="datepicker picker__input picker__input--active" name="date" value="do 25 oktober 2013" readonly="">
<input type="hidden" name="date_submit" value="2013-10-25">
<input type="hidden" name="date_submit" value="">
</form>
Gewijzigd op 18/10/2013 09:35:32 door N K
http://amsul.ca/pickadate.js/date.htm#formats_translations of lees het volgende eens door: https://github.com/amsul/pickadate.js/issues/188.
Probeer data-value anders eens zoals op Gewijzigd op 18/10/2013 09:45:44 door Koen Vlaswinkel
Ik heb nu onderstaande waardoor date_submit altijd wordt gevuld maar nu verschijnt de oude post waarde als value weer na submit onder het eerste input veld ( met class="datepicker").
Vreemd..
Code (php)
Edit:
oh, en initieel is er ook geen waarde meer te zien in de input...
Dit werkt dus ook niet..
oh, en initieel is er ook geen waarde meer te zien in de input...
Dit werkt dus ook niet..
Gewijzigd op 18/10/2013 10:29:57 door N K
Enig idee?
Yes! dank dank!