01. maj 2009 - 23:38
Der er
2 kommentarer og
1 løsning
Hjælp til javascritpt kode
Hejsa.
Jeg har en kalender, som viser dagene i en måned.
Hvis jeg klikker på en dato, så vises datoen som en "startdato" på en tekstlinje og datoen smides samtidig i et input-felt af typen hidden.
Jeg kunne godt tænke mig, at datoen smides i et ekstra input-felt, men kan ikke finde ude af det.
Uddrag af JS-koden:
method:'get',
parameters: {startdato: $('ankomst').innerHTML, starttid: $('fra_kl').value, slutdato: $('afrejse').innerHTML, sluttid: $('til_kl').value},
onSuccess: function(transport){
Uddrag af html-koden:
Ankomst:<div id='ankomst'>";
if(isSavedForm('ankomst'))
{
echo getSavedForm('ankomst',true);
}
else
{
echo 'Klik på kalenderen for at vælge';
}
echo "</div>
<input type='hidden' id='fankomst' value='";
if(isSavedForm('ankomst'))
{
echo getSavedForm('ankomst');
}
echo "' name='ankomst'>
Hele JS-funktionen ser sådan her ud:
Jeg tror for øvrigt, der er noget Ajax i. Jeg troede at Ajax er JS.
function tjekres(){
if($('fra_kl').value.match(/^\d{1,2}:\d{1,2}$/) && $('til_kl').value.match(/^\d{1,2}:\d{1,2}$/) && $('ankomst').innerHTML.match(/^\d{1,2}-\d{1,2}-\d{4}$/) && $('afrejse').innerHTML.match(/^\d{1,2}-\d{1,2}-\d{4}$/))
{
var fejl = 0;
new Ajax.Request('opret_ajax.php',
{
method:'get',
parameters: {startdato: $('ankomst').innerHTML, starttid: $('fra_kl').value, slutdato: $('afrejse').innerHTML, sluttid: $('til_kl').value},
onSuccess: function(transport){
fejl = transport.responseText || 1;
//alert(fejl);
if(fejl==0){
$('myname').focus();
}
if(fejl==1){
alert("Du har valgt en eller flere dage, der allerede er reserveret. Vælg en anden periode.");
$('ankomst').innerHTML="Klik på kalenderen for at vælge";
$('fankomst').clear();
$('afrejse').innerHTML="Klik på kalenderen for at vælge";
$('fafrejse').clear();
$('fra_kl').clear();
$('til_kl').clear();
}
if(fejl==2){
alert("Du har valgt en startdato, som er placeret efter din slutdato. Vælg en anden periode.");
$('ankomst').innerHTML="Klik på kalenderen for at vælge";
$('fankomst').clear();
$('afrejse').innerHTML="Klik på kalenderen for at vælge";
$('fafrejse').clear();
$('fra_kl').clear();
$('til_kl').clear();
}
},
onFailure: function(){ alert('Something went wrong...') }
});
}
}
OG SÅ ER DER PHP I DEN SIDSTE KODE: HVIS DET ER REN HTML- SER DEN SÅDAN HER UD:
Ankomst:<div id='ankomst'>Klik på kalenderen for at vælge</div>
Afrejse:<div id='afrejse'>Klik på kalenderen for at vælge</div>
<input type='hidden' id='fankomst' value='' name='ankomst'>
<input type='hidden' id='fafrejse' value='' name='afrejse'>