BjMedlem sedan sep. 2000320 inlägg Har ett litet märkligt problem med ett formulär som jag inte blir av med.
Normalt när man fyller i ett formulär så kan man ju trycka "Enter" så trycks knappen "Skicka" ned och formuläret går då vidare till nästa sida och bearbetas.
Men i detta fallet så får jag ett felmeddelande. Det lyder
Åtgärden är inte tillåten när objektet är stängt.
Använder jag musen eller "TAB" så funkar det normalt
Formuläret:
<INPUT TYPE = "TEXT" NAME = "kundnummer">
<INPUT TYPE = "SUBMIT" NAME = "knapp" VALUE = "Välj kundnummer">
Nästa sida
If Request.Form("knapp") = "Välj kundnummer" Then
@ndersMedlem sedan juni 200026 914 inlägg Det känns helt klart som att felet är ett asp-fel. Pekar inte felmeddelandet på en viss rad? Hur ser koden ut?
Det beror förmodligen på att din if-sats aldrig blir sann eftersom du inte klickade på knappen, då har ju inte Request.Form("knappen") något värde.
mvh
BjMedlem sedan sep. 2000320 inlägg Jodå den pekar på raden med RecSet.Close i slutet av sidan.
Se koden för att ta emot resultatet nedan.
Kände också först att det var ngt med ASP-koden men eftersom man "manuellt" kan klicka på knappen så funkar det ju.
Set RecSet = Server.CreateObject("ADODB.Recordset")
If Request.Form("knapp") = "Välj kundnummer" Then
SQL = "SELECT * From kunder WHERE Kundnummer = '" & Request.Form("kundnummer") & "'"
RecSet.Open SQL, Connect
If RecSet.EOF THEN
response.write "<center><img border=""0"" src=""logga.jpg""></center>"
response.redirect "fel.asp"
End If
Do While Not RecSet.EOF
%>
MatteMedlem sedan aug. 20002 970 inlägg Nu kan jag inget om ASP, men jag har råkat ut för liknande när man bara har ett fält förutom submitknappen.
Lösningen är att antingen att på skriptsidan fråga efter kundnummer eller att göra så här:
<input type="hidden" name= "knapp" value="">
<INPUT TYPE = "TEXT" NAME = "kundnummer">
<INPUT TYPE = "SUBMIT" VALUE = "Välj kundnummer">
BjMedlem sedan sep. 2000320 inlägg Testade Mattes förslag men då blev det samma fel + att det inte gick att logga in även om man klickade på knappen...
BjMedlem sedan sep. 2000320 inlägg Nu kanske denna tråd skulle ligga under ASP i stället.
Jag testade med att lägga en
onClick="return confirm('Är du färdig?');"
kopplad till knappen, men slår man "ENTER" så är det precis som om den inte trycker på knappen. Man får inte frågan "Är du färdig". Men man hamnar på nästa sida med felmeddelandet som jag beskrev ovan.
Ok, här kommer en förkortad kod från sidan.
<% Response.Buffer = True %>
<%
Set Connect = Server.CreateObject("ADODB.Connection")
MdbFilePath = Server.MapPath("databasen.mdb")
Connect.Open = "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & MdbFilePath & ";"
Set RecSet = Server.CreateObject("ADODB.Recordset")
If Request.Form("knapp") = "Välj kundnummer" Then
SQL = "SELECT * From kunder WHERE Kundnummer = '" & Request.Form("kundnummer") & "'"
RecSet.Open SQL, Connect
If RecSet.EOF Then
response.redirect "fel.asp"
End If
Do While Not RecSet.EOF
%>
<html>
<head>
<title></title>
</head>
Orderdatum: <%=date%>
<form action = "sidan2.asp" method = "post" name="orderform" onsubmit = "return valid()">
<INPUT TYPE = "TEXT" NAME = "namn">
<INPUT TYPE = "TEXT" NAME = "adress">
....fler fält........
<input type=hidden name="kundnummer" value="<%=RecSet("kundnummer")%>"><%=RecSet("kundnummer")%>
....fler hiddenfält.....
<input type="submit" value="Skicka">
<%
RecSet.MoveNext
Loop
End If
RecSet.Close
Connect.Close
Set RecSet = nothing
Set Connect = nothing
%>
Jesper TMedlem sedan nov. 20017 058 inlägg Ändra till detta:
<%
RecSet.MoveNext
Loop
End If
RecSet.Close
Set RecSet = nothing
Connect.Close
Set Connect = nothing
%>
dectgapMedlem sedan sep. 20021 542 inlägg
Bj skrev:
Jag testade med att lägga en
onClick="return confirm('Är du färdig?');"
kopplad till knappen, men slår man "ENTER" så är det precis som om den inte trycker på knappen. Man får inte frågan "Är du färdig". Men man hamnar på nästa sida med felmeddelandet som jag beskrev ovan.
Det är väl ganska logiskt eftersom man aldrig trycker på knappen?
Skit i onclick på knappen, utan kör med onsubmit på formuläret.
Alltså:
<form onSubmit="return confirm('Är du färdig?');">
BjMedlem sedan sep. 2000320 inlägg Ja de må vara hänt men det ursprungliga problemet ligger fast.
jupitersMedlem sedan sep. 2002102 inlägg Måste ju vara en bugg om det inte funkar med bara en textruta förutom submit. Vid fler textrutor är det ju inget problem.
Det funkade inte att göra en textruta till type=hidden men
detta funkar:
<INPUT TYPE = "TEXT" NAME = "xxx" style="display:none">
<INPUT TYPE = "TEXT" NAME = "kundnummer">
<INPUT TYPE = "SUBMIT" NAME = "knapp" VALUE = "Välj kundnummer">
BjMedlem sedan sep. 2000320 inlägg Där satt den!!
Tack jupiters och er andra för hjälpen!!