Hej!
Det är så att jag håller på med en gästbok...
I fall någon inte fyller i sitt namn ex. så ska det komma upp en ruta där det står
"Du måste fylla i det namn!".
Detta gör jag med denna kod!
if trim(request(namn)) = "" then
response.write "<script>alert('Du måste fylla i ditt namn!')</script>"
end if
Fast nu så avbryts i SQL-satsen, utan körs direkt man tryckt på OK.
Går det avbryta den på något sätt innan alerten?
@ndersMedlem sedan juni 200032 969 inlägg All asp-kod körs först, resultatet skickas till webbläsaren.
Om du vill avbryta exekveringen av en ASP-sida:
Response.End
bwcMikkeMedlem sedan okt. 2004159 inlägg Så här brukar jag göra:
function Save(){
if (form1.edtRubrik.value==""){
alert("Rubrik måste anges.");
document.form1.edtRubrik.focus();
return false;
}else{
document.form1.action="galleri.aspx?action=save";
document.form1.target="_self";
document.form1.submit();
}
}
J.N.Medlem sedan apr. 20031 660 inlägg HEJ!
Ja, det är klart att den fortsätter, du har ju ingen avbrytning?
1. response.end
2. Javascript-confirm
3. Validera i Javascript istället
Jag hade gjort #3, kombinerat med validering på serversidan av några data.
Men, det är kanske det du håller på med också?
History.back fungerar ju inte, eftersom de som ser den texten isåfall inte har Javascript aktiverat. Jag har inte löst det problemet, utan gör en redirect tillbaka till formuläret, med påpekande att man ska fylla i alla/vissa fält.
De får kanske fylla i något en gång till, men det får de ta! :)
Dubbla svar under tiden jag skrev. Nu har du att jobba med!
Man måste ju kunna lösa det utan att man behöver fylla i dom fält dom redan fyllt i?
Jag kollar på en gästbok nu, den har det så...
Aha, såg javascriptet nu som bwcMikke skicka. Hur ska jag göra för att den ska köras?
bwcMikkeMedlem sedan okt. 2004159 inlägg Den knapp där du sparar formuläret är förmodligen av typen "submit" idag.
Ändra till
<input type="button" value="spara" onClick="save();"> så körs detta script och submitten av formuläret sker i skriptet.
F-n, det fungerar inte endå...
<script="javascript">
<!--
function Save(){
if (gbook.rubrik.value==""){
alert("Rubrik måste anges.");
document.gbook.rubrik.focus();
return false;
}else{
document.gbook.action="gbook.asp?action=save";
document.gbook.target="_self";
document.gbook.submit();
}
}
-->
</script>
@ndersMedlem sedan juni 200032 969 inlägg På vilket sätt funkar det inte?
Felmeddelande?
Hur kallar du på funktionen?
Är det verkligen fältet "rubrik" du vill kontrollera?
bwcMikkeMedlem sedan okt. 2004159 inlägg Och formuläret ser ut i stil med
<form name="gbook" action="" method="post">
Rubrik: <input type="text" name="rubrik" size="40">
<input name="cmdSave" type="button" id="cmdSave" onClick="Save();" value=" Spara ">
</form>
??
1. Får inget felmeddelande.
2. Det är "rubrik" jag vill kontrollera
3. Knappen är av typ button
4. Textfältet heter rubrik
5. Formulärnamnet är "gbook"
Jepp, så ser det ut bwcMikke ;)
Aha...såg ett felmeddelande nu när jag öppnade sidan i IE. Det står ett tecken fattas i javascript koden.
@ndersMedlem sedan juni 200032 969 inlägg Använd Firefox eller annan vettig webbläsare med en ordentlig javascriptkonsoll.
För webbutvecklare suger IE kraftigt.
Jag använder alltid firefox, var tuvngen att kolla i IE bara. Men annars hatar jag IE!
FIREFOX visar inge fel! :o
@ndersMedlem sedan juni 200032 969 inlägg Firefox visar felen i javascriptkonsollen.
Öppna den genom att skriva javascript: i adressraden.
1. Save is not defined.
2. gbook is not ot defined.
Löste felet.
if (document.gbook.rubrik.value==""){
document. fanns inte där.
Tackså mycket för hjälpen alla!
Det fungerade när det var ett formulär bara. Men när jag la in flera if-satser så fungerade det ej.
@ndersMedlem sedan juni 200032 969 inlägg <script="javascript">
Jag tycker det saknas något här...