TulorkMedlem sedan aug. 2004903 inlägg Undrar lite över varför det ibland inte går att trycka på Enter knappen vid när man vill skicka i ett formulär? Vissa av de sidor jag skapat fungerar det.. i andra inte, och jag ser ingen direkt skillnad på formulären jag använder mig av.
Ett exempel på ett formulär jag använder mig av där jag inte kan använda enter knappen.
<form style="margin-top:0px;" action="index.php" method="post">
<input type="text" name="XX" class="input2" value="XX" /><br />
<input type="submit" value="Search" name="Search" class="submit3" />
</form>
dAEkMedlem sedan feb. 20041 816 inlägg Kan det vara ett problem specifikt för vissa webbläsare? Jag kan nämligen inte komma ihåg att jag haft det här problemet med Opera.
TulorkMedlem sedan aug. 2004903 inlägg Det gäller främst IE. FF, Opera fungerar korrekt.
dAEkMedlem sedan feb. 20041 816 inlägg Aha. Det brukar krångla med enterknappen om man inte har nån submit men det har du ju. Vet inte om det finns nån annan workaround än att lägga en lyssnare på formuläret. Inte världens snyggaste lösning kanske, men för användarna underlättar det om beteendet är konsekvent.
TroxyMedlem sedan mars 20041 505 inlägg Tulork, jag kan posta med enter när jag använder din kod, både med Firefox och IE.
Är du säker på att du inte har utelämnat några detaljer i ditt exempel som kan ställa till problem?
TulorkMedlem sedan aug. 2004903 inlägg Ni kan själv undersöka fenomenet på gymgate första sidan. Sök på Halmstad exempelvis
Det fungerar finfint att posta med "Enter", både när man söker på Halmstad och andra orter. Firefox 2.0.0.6
TulorkMedlem sedan aug. 2004903 inlägg Precis. Det är i IE problemet uppstår. jag har inte hittat en lösning än. Kan tyckas bara ett litet problem, men som sagt så är det väldigt bra om sidans beteende är konsekvent rakt genom sajten. Om man trycker enter och ingenting händer kan man få intrycket att det inte finns några gym under den staden, fast i själva verket är det bara submit som inte fungerar korrekt vid enter tryck.
dAEkMedlem sedan feb. 20041 816 inlägg Jag upptäckte detta alldeles nyligen, och konstaterade bara att formulär med endast ett input-fält inte submittades via enter i IE. Verkar vara så även för dig.
Hittat nån lösning?
Hmmm... Jag har ett liknande problem i internet explorer 7. När jag slår enter för att submitta formuläret så submittas visserligen formuläret men submit knappens value skickas inte. Det kanske är logiskt men min funktion bygger på att jag använder inputknappens värde för att exekvera saker. Finns det någon smidig lösning på detta?
<form action="login.asp?rTargetUrl=<%=sTargetUrl%>" method="post" name="frmLogin" style="margin:0px; padding:0px;">
<input type="text" name="rAccountName" value="" maxlength="30" style="width:186px; font-size:20px;">
<input type="submit" value="Select" name="rButton" style="width:100px; font-size:18px;">
</form>
Och du har bara en submit-knapp i det formuläret? Du kan ju alltid lägga till ett hidden-fält. (Om inte för att testa först att vu verkligen submittar rätt form.)
Hmm... hidden fältet är ju faktiskt en workaround som fungerar :/
ACCOUNT:<br />
<% if globalAccountName <> "" then %>
<form action="login.asp?rTargetUrl=<%=sTargetUrl%>" method="post" name="frmLogin" style="margin:0px; padding:0px;" onsubmit="return validera()">
<input type="text" name="rAccountName" value="<%=globalAccountName%>" disabled="disabled" maxlength="30" style="width:186px; font-size:20px;"><br />
<% call subShowAllAccountActivities() %><p></p>
PASSWORD:<br />
<input type="password" name="rLoginPass" value="" maxlength="30" style="width:186px; font-size:20px;">
<input type="submit" value="Log in" name="rButton" style="width:100px; font-size:18px;">
<script>
frmLogin.rLoginPass.focus();
</script>
<% else %>
<form action="login.asp?rTargetUrl=<%=sTargetUrl%>" method="post" name="frmLogin" style="margin:0px; padding:0px;">
<input type="text" name="rAccountName" value="" maxlength="30" style="width:186px; font-size:20px;">
<input type="submit" value="Select" name="rButton" style="width:100px; font-size:18px;">
<br/>
<%=varAccountText %>
<script>
frmLogin.rAccountName.focus();
</script>
<% end if %>
</form>
Jag har alltså två submitknappar men bara en av dem syns via if-satsen. Antog att detta var tillåtet. ?!
Ja, webbläsaren kan ju bara se en knapp i taget. Det där låter mer som en bugg i IE7. De kanske t ex har bestämt sig för att sluta skicka med submit-knappens värde om man trycker enter, oavsett omständigheter?
Om jag var du skulle jag bara köra ett hidden-fält och inte fundera vidare på det.
Edit: Kan du för övrigt inte gå efter huruvida password-fältet existerar? I PHP kan man göra något i stil med
if(isset($_POST['password'])){...}
Vet dock inte om det finns någon motsvarighet i ASP.
Tack för din hjälp Nitro. Bekräftar att hidden variaten löste mitt problem. :)