Det tror jag nog tyvärr inte att man kan göra.
Däremot kan du ju alltid lagra IP och klockslag i gästboksdatabasen och sen kontrollera så att det har gått en viss tid mellan de olika inläggen.
11 svar · 316 visningar · startad av Jacek
Jag kan typ inget om java, bara så ni vet..
Därför undrar jag hur en javascript kod kan se ut om;
Jag har ett formulär med ett formulär fält. Efter man tryckt p åsubmit knappen så skall skall man inte kunna trycka p åden igen innan sidan flyttats till det angivna actionet.
Så att man inte kan trycka 2 gånger snabbt på knappen så att det kommer in 2 poster i t.ex. en gästbok.
nån som hajja?
Det tror jag nog tyvärr inte att man kan göra.
Däremot kan du ju alltid lagra IP och klockslag i gästboksdatabasen och sen kontrollera så att det har gått en viss tid mellan de olika inläggen.
Visst borde väl det vara möjligt att göra.
Man kan ju vid klick "gömma" submit-knappen, sätta en cookie som expirar n antal minuter/sekunder eller vilket tidsintervall man nu vill ha efter en postning.
cya,
PatrikB
Å andra sidan så är det ofta bara att trycka enter så räknas det som en "submit" av formuläret.
jo, men man kan göra submit knappen som en länk-bild och i onClick lägga all js-kod för att submitta och gömma "submit-knappen"(bilden).
Fast, det säkraste är att sätta en cookie för att slippa dubbelpostningar.
PS .. finns en bra artikel på www.asptoday.com om hur man kan göra ... kräver att du är prenumerant där för att kunna "leta" reda på artikeln och kunna kika på den ... DS
cya,
PatrikB
kom på en annan sak.
man borde oxå kunna "gömma" hela formet ... onSubmit så att säga.
onSubmit:"document.test.style.visibility = 'hidden';"
vet inte om det funkar då jag inte har ngn "sirap" server att testa mot =(
cya,
PatrikB
Gör ett scriptblock där du först definierar submited=false; Sedan kan du skapa en funktion för att validera formuläret function checkForm(formObj). Sist i den funktionen kan du då använda;
if(submited==false){
submited=true;
return true;
} else {
alert('Formuläret skickas, var god vänta');
return false;
}
Funkar oavsett om du klickar på en enter-knapp eller trycker return i ett fält.
Skall det se ut liknande detta?
<script language="JavaScript">
function form(){
if (document.skicka.inlagg.value.length \< 5){
alert("skriv ett inlägg");
return false;
}
if(submited==false){
submited=true;
return true;
} else {
alert('Formuläret skickas, var god vänta');
return false;
}
}
</script>
för det vill inte funka riktigt!
Du måste som sagt definiera submited=false; först. (allra först i script-blocket). ...och du använder väl onSubmit="return form();" i <form>-taggen?
Skriv ut hur koden skall vara istället..
jag kan nada om JavaScript :/
<script language="JavaScript" type="text/javascript">
submited=false;
function checkform(formobj){
if (formobj.inlagg.value.length < 5){
alert("skriv ett inlägg");
return false;
} else {
if(submited==false){
submited=true;
return true;
} else {
alert('Formuläret skickas, var god vänta');
return false;
}
}
}
</script>
<form action="url" onSubmit="return checkform(this);">
<input type="text" name="inlagg">
<input type="submit">
</form>