By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
424,836 Members | 1,983 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 424,836 IT Pros & Developers. It's quick & easy.

Enter key will not submit the form

P: n/a
I have a form I want to submit to itself. I want to be able to type in a
list of numbers and submit the form and have that list show up on the same
form under the text box I typed them into and the buttons. The problem is
when I post a form to itself, the Enter key will not submit the form, it
only clears the contents of the text box. The only way I can submit is to
click the submit button. Here is a simplified version of my code that I had
to comment out so you could see the source. Note the name of the page is
Page1.asp

'<%@ Language=VBScript %>
'<HTML>
'<HEAD>
'</HEAD>
'<BODY>
'<p>Enter numbers separated by a comma.</p>
'<form action="Page1.asp" method="POST" id=form1 name=form1>
'<p><input type="text" name="ListID" size="50" maxlength="1000"></p>
'<p><input type="submit" value="Submit" name="B1"><input type="reset"
value="Reset" 'name="B2"></p>
'</form>
'<%if Request.Form("B1")="Submit" then
' lvListID=Request.Form("ListID")
' Response.Write lvListID
'End IF '%>
'</BODY>
'</HTML>

I know I've posted a page to itself before and had never had problems with
the Enter key not submitting. What am I doing wrong?
Thanks
Mike
Jul 22 '05 #1
Share this Question
Share on Google+
15 Replies


P: n/a
It most likely is submitting just fine. You're just not using the correct
criteria to determine if it was submitted. Try either evaluating your IF
statement based on the contents of Request.Form("ListID") or
Request.ServerVariables("REQUEST_METHOD"). To verify that your form is
submitting, try using this code and pressing enter:

<HTML>
<HEAD>
</HEAD>
<BODY>
<p>Enter numbers separated by a comma.</p>
<form action="page1.asp" method="POST" id=form1 name=form1>
<p><input type="text" name="ListID" size="50" maxlength="1000"></p>
<p><input type="submit" value="Submit" name="B1"><input type="reset"
value="Reset" name="B2"></p>
</form>
<%

For Each thing in Request.Form
Response.Write thing & " = " & Request.Form(thing) & "<hr />"
Next

%>
</BODY>
</HTML>

Ray at work

"M Smith" <ms****@avma.org> wrote in message
news:e9**************@TK2MSFTNGP12.phx.gbl...
I have a form I want to submit to itself. I want to be able to type in a
list of numbers and submit the form and have that list show up on the same
form under the text box I typed them into and the buttons. The problem is
when I post a form to itself, the Enter key will not submit the form, it
only clears the contents of the text box. The only way I can submit is to
click the submit button. Here is a simplified version of my code that I had to comment out so you could see the source. Note the name of the page is
Page1.asp

'<%@ Language=VBScript %>
'<HTML>
'<HEAD>
'</HEAD>
'<BODY>
'<p>Enter numbers separated by a comma.</p>
'<form action="Page1.asp" method="POST" id=form1 name=form1>
'<p><input type="text" name="ListID" size="50" maxlength="1000"></p>
'<p><input type="submit" value="Submit" name="B1"><input type="reset"
value="Reset" 'name="B2"></p>
'</form>
'<%if Request.Form("B1")="Submit" then
' lvListID=Request.Form("ListID")
' Response.Write lvListID
'End IF '%>
'</BODY>
'</HTML>

I know I've posted a page to itself before and had never had problems with
the Enter key not submitting. What am I doing wrong?
Thanks
Mike

Jul 22 '05 #2

P: n/a
It's a bug in IE (imagine that). When there is only one text box, IE messes
it up.

I don't remember the work-around (funny that IE is now the browser to work
around), but I think if you add a hidden field, or a text box with the
visibilty hidden it will work.

Bob Lehmann

"M Smith" <ms****@avma.org> wrote in message
news:e9**************@TK2MSFTNGP12.phx.gbl...
I have a form I want to submit to itself. I want to be able to type in a
list of numbers and submit the form and have that list show up on the same
form under the text box I typed them into and the buttons. The problem is
when I post a form to itself, the Enter key will not submit the form, it
only clears the contents of the text box. The only way I can submit is to
click the submit button. Here is a simplified version of my code that I had to comment out so you could see the source. Note the name of the page is
Page1.asp

'<%@ Language=VBScript %>
'<HTML>
'<HEAD>
'</HEAD>
'<BODY>
'<p>Enter numbers separated by a comma.</p>
'<form action="Page1.asp" method="POST" id=form1 name=form1>
'<p><input type="text" name="ListID" size="50" maxlength="1000"></p>
'<p><input type="submit" value="Submit" name="B1"><input type="reset"
value="Reset" 'name="B2"></p>
'</form>
'<%if Request.Form("B1")="Submit" then
' lvListID=Request.Form("ListID")
' Response.Write lvListID
'End IF '%>
'</BODY>
'</HTML>

I know I've posted a page to itself before and had never had problems with
the Enter key not submitting. What am I doing wrong?
Thanks
Mike

Jul 22 '05 #3

P: n/a
Worked fine for me using IE.

Ray at work

"Bob Lehmann" <no****@dontbotherme.zzz> wrote in message
news:%2****************@TK2MSFTNGP15.phx.gbl...
It's a bug in IE (imagine that). When there is only one text box, IE messes it up.

I don't remember the work-around (funny that IE is now the browser to work
around), but I think if you add a hidden field, or a text box with the
visibilty hidden it will work.

Bob Lehmann

Jul 22 '05 #4

P: n/a
M Smith wrote:
...The problem is when I post a form to itself, the Enter key
will not submit the form, it only clears the contents of the
text box...

<input type="text" name="ListID" size="50" maxlength="1000">
<input type="submit" value="Submit" name="B1">
<input type="reset" value="Reset" 'name="B2">


It sounds as if the focus is on the RESET input. Does the behavior change if
you convert the RESET to a button?

<input type="button" value="Reset" onclick="this.form.reset()">

--
Dave Anderson

Unsolicited commercial email will be read at a cost of $500 per message. Use
of this email address implies consent to these terms. Please do not contact
me directly or ask me to contact you directly for assistance. If your
question is worth asking, it's worth posting.
Jul 22 '05 #5

P: n/a
Dave, try it with the code he posted, and you'll see what I'm talking about.

Ray at work

"Dave Anderson" <GT**********@spammotel.com> wrote in message
news:uC**************@TK2MSFTNGP09.phx.gbl...
It sounds as if the focus is on the RESET input. Does the behavior change if you convert the RESET to a button?

<input type="button" value="Reset" onclick="this.form.reset()">

Jul 22 '05 #6

P: n/a
Ray Costanzo [MVP] wrote:
Dave, try it with the code he posted, and you'll see what I'm talking
about.


Yeah, you're probably right, Ray.

--
Dave Anderson

Unsolicited commercial email will be read at a cost of $500 per message. Use
of this email address implies consent to these terms. Please do not contact
me directly or ask me to contact you directly for assistance. If your
question is worth asking, it's worth posting.
Jul 22 '05 #7

P: n/a
Maybe the problem is actually that his sound his muted and he's not
hearing the Start Navigation sound. ;]

Ray at work

"Dave Anderson" <GT**********@spammotel.com> wrote in message
news:Oq**************@tk2msftngp13.phx.gbl...
Ray Costanzo [MVP] wrote:
Dave, try it with the code he posted, and you'll see what I'm talking about.
Yeah, you're probably right, Ray.

--
Dave Anderson

Unsolicited commercial email will be read at a cost of $500 per

message. Use of this email address implies consent to these terms. Please do not contact me directly or ask me to contact you directly for assistance. If your question is worth asking, it's worth posting.

Jul 22 '05 #8

P: n/a
You're right. I was close though.

The bug I was thinking about involved the submit button. When there is a
single textbox, and the "Enter" key is used to submit the form, the onclick
event of the submit button doesn't fire, nor is information about the button
sent to the server.

This discusses the problem in an ASP.Net context, but the same applies to
ASP pages.....
http://www.bbits.co.uk/blog/archive/2004/03/09/191.aspx

Bob Lehmann

"Ray Costanzo [MVP]" <my first name at lane 34 dot commercial> wrote in
message news:eS**************@tk2msftngp13.phx.gbl...
Worked fine for me using IE.

Ray at work

"Bob Lehmann" <no****@dontbotherme.zzz> wrote in message
news:%2****************@TK2MSFTNGP15.phx.gbl...
It's a bug in IE (imagine that). When there is only one text box, IE

messes
it up.

I don't remember the work-around (funny that IE is now the browser to work around), but I think if you add a hidden field, or a text box with the
visibilty hidden it will work.

Bob Lehmann


Jul 22 '05 #9

P: n/a

"Bob Lehmann" <no****@dontbotherme.zzz> wrote in message
news:%2******************@TK2MSFTNGP11.phx.gbl...
You're right. I was close though.

The bug I was thinking about involved the submit button. When there is a single textbox, and the "Enter" key is used to submit the form, the onclick event of the submit button doesn't fire, nor is information about the button sent to the server.
Is that really a bug? I personally would only want an onclick event
to fire on click.

This discusses the problem in an ASP.Net context, but the same applies to ASP pages.....
http://www.bbits.co.uk/blog/archive/2004/03/09/191.aspx


In my opinion, it's a bug in ASP.NET and it's attempt to make a
client-server environment behave like it's not that.

Ray at work

Jul 22 '05 #10

P: n/a
>> Is that really a bug?
I'd be less inclined to think so if it wasn't for the fact that adding a
second textbox causes the onclick to fire on the client, and button
information (value) to be sent to the server when hitting "Enter".
In my opinion, it's a bug in ASP.NET
The same behavior in .asp and .htm pages.

Bob Lehmann

"Ray Costanzo [MVP]" <my first name at lane 34 dot commercial> wrote in
message news:uW**************@TK2MSFTNGP09.phx.gbl...
"Bob Lehmann" <no****@dontbotherme.zzz> wrote in message
news:%2******************@TK2MSFTNGP11.phx.gbl...
You're right. I was close though.

The bug I was thinking about involved the submit button. When there

is a
single textbox, and the "Enter" key is used to submit the form, the

onclick
event of the submit button doesn't fire, nor is information about

the button
sent to the server.


Is that really a bug? I personally would only want an onclick event
to fire on click.

This discusses the problem in an ASP.Net context, but the same

applies to
ASP pages.....
http://www.bbits.co.uk/blog/archive/2004/03/09/191.aspx


In my opinion, it's a bug in ASP.NET and it's attempt to make a
client-server environment behave like it's not that.

Ray at work

Jul 22 '05 #11

P: n/a
"M Smith" wrote in message news:e9**************@TK2MSFTNGP12.phx.gbl...
:I have a form I want to submit to itself. I want to be able to type in a
: list of numbers and submit the form and have that list show up on the same
: form under the text box I typed them into and the buttons. The problem is
: when I post a form to itself, the Enter key will not submit the form, it
: only clears the contents of the text box. The only way I can submit is to
: click the submit button. Here is a simplified version of my code that I
had
: to comment out so you could see the source. Note the name of the page is
: Page1.asp
:
: '<%@ Language=VBScript %>
: '<HTML>
: '<HEAD>
: '</HEAD>
: '<BODY>
: '<p>Enter numbers separated by a comma.</p>
: '<form action="Page1.asp" method="POST" id=form1 name=form1>
: '<p><input type="text" name="ListID" size="50" maxlength="1000"></p>
: '<p><input type="submit" value="Submit" name="B1"><input type="reset"
: value="Reset" 'name="B2"></p>
: '</form>
: '<%if Request.Form("B1")="Submit" then
: ' lvListID=Request.Form("ListID")
: ' Response.Write lvListID
: 'End IF '%>
: '</BODY>
: '</HTML>
:
: I know I've posted a page to itself before and had never had problems with
: the Enter key not submitting. What am I doing wrong?
: Thanks
: Mike

The problem is the Submit button doesn't post a value when you press ENTER
from the text box. You're testing the value of the button and there isn't
one. If you tab to the button and press ENTER, SPACE or you click on the
submit button, then it posts the value of the button. It sounds like a bug
to me or (cough) a "by design" change.

I wouldn't test if a button had been pressed when submitting to a page if
I'm looking for a value from a text box. I would just check to see if the
value exists since it's posting to itself and it doesn't have a default
value, clearly it is there only if it had been posted. Yes, it could have
been posted from somewhere else but that is easy enough to test for also.

Adding a hidden field as Bob suggested doesn't make it work either. I
didn't check another text field with visibility: hidden or display: none.

You can restrict the ENTER key from being used to submit the form with:
<form action="Page1.asp" method="POST" id="form1" name="form1"
onsubmit="return false">

Then you can add onclick events to your buttons:
<p><input id="b1" type="button" value="Submit"
onclick="document.form1.submit()" />
<input id="b2" type="button" value="Reset"
onclick="document.form1.reset()" />
</p>

However, you're not going to get a value for the submit button. It appears
your approach is what needs to be modified because B1 will always =
"Submit", whether it gets submitted or not. What you need to test for is a
value in ListID and if found, display it. But, you can even eliminate that
test and just display it anyway since you have no presentable text with it.
If it's empty, it will not display and if it has content, it will.

Or, you can add a hidden field and set the value of the button, but I would
only do this if I had multiple buttons and I wanted to know which one was
pressed. If you only have the two, as you do currently, only the submit
button can submit the form. That's not the best way to validate a form
being posted upon entry.

I remember my first problem with forms was MAPI mail submissions including
the submit button. The way around it was to remove the name= from the
submit button so it did not include it. Perhaps MSFT over simplified it
now?! (O:=

Hidden field and ENTER key restricted from posting from the text field:
http://kiddanger.com/lab/msmith/page1.asp
Source:
http://kiddanger.com/lab/msmith/ss_page1.asp

Only change is displaying the value if it exists:
http://kiddanger.com/lab/msmith/page2.asp
Source:
http://kiddanger.com/lab/msmith/ss_page2.asp

HTH...

--
Roland Hall
/* This information is distributed in the hope that it will be useful, but
without any warranty; without even the implied warranty of merchantability
or fitness for a particular purpose. */
Technet Script Center - http://www.microsoft.com/technet/scriptcenter/
WSH 5.6 Documentation - http://msdn.microsoft.com/downloads/list/webdev.asp
MSDN Library - http://msdn.microsoft.com/library/default.asp
Jul 22 '05 #12

P: n/a
Roland Hall wrote:
The problem is the Submit button doesn't post a value when you press
ENTER from the text box.


Unless (a) there are multiple TEXT inputs, or (b) the browser is not IE. It
is only the single text input case with Internet Explorer that exhibits this
behavior.
--
Dave Anderson

Unsolicited commercial email will be read at a cost of $500 per message. Use
of this email address implies consent to these terms. Please do not contact
me directly or ask me to contact you directly for assistance. If your
question is worth asking, it's worth posting.
Jul 22 '05 #13

P: n/a
"Dave Anderson" wrote in message
news:e8**************@TK2MSFTNGP15.phx.gbl...
: Roland Hall wrote:
: > The problem is the Submit button doesn't post a value when you press
: > ENTER from the text box.
:
: Unless (a) there are multiple TEXT inputs, or (b) the browser is not IE.
It
: is only the single text input case with Internet Explorer that exhibits
this
: behavior.

Yes, I agree it is an IE issue. Did it sound like I was saying something
different re: it being a bug?
Jul 22 '05 #14

P: n/a
Roland Hall wrote:
Unless (a) there are multiple TEXT inputs, or (b) the browser is not
IE. It is only the single text input case with Internet Explorer
that exhibits this behavior.


Yes, I agree it is an IE issue. Did it sound like I was saying
something different re: it being a bug?


You certainly did not suggest it was an Internet Explorer bug. I personally
do not consider it a bug, since this is open to interpretation:

17.13.2 Successful controls
A successful control is "valid" for submission. Every successful
control has its control name paired with its current value as part
of the submitted form data set. A successful control must be
defined within a FORM element and must have a control name.

http://www.w3.org/TR/html401/interac...s.html#h-17.13

The above does not require that a submit button be considered successful --
it merely sets a threshold for such consideration. MS obviously does not
consider the button activated when [Enter] in pressed in the text input.

Who can say why? Perhaps this goes back to the transition from ISINDEX to
text inputs. Good question for the blogs, though.

--
Dave Anderson

Unsolicited commercial email will be read at a cost of $500 per message. Use
of this email address implies consent to these terms. Please do not contact
me directly or ask me to contact you directly for assistance. If your
question is worth asking, it's worth posting.
Jul 22 '05 #15

P: n/a
It's weird, though, that it is considered activiated when there is more than
one textbox in the form.

Bob Lehmann

"Dave Anderson" <GT**********@spammotel.com> wrote in message
news:%2****************@TK2MSFTNGP09.phx.gbl...
Roland Hall wrote:
Unless (a) there are multiple TEXT inputs, or (b) the browser is not
IE. It is only the single text input case with Internet Explorer
that exhibits this behavior.
Yes, I agree it is an IE issue. Did it sound like I was saying
something different re: it being a bug?


You certainly did not suggest it was an Internet Explorer bug. I

personally do not consider it a bug, since this is open to interpretation:

17.13.2 Successful controls
A successful control is "valid" for submission. Every successful
control has its control name paired with its current value as part
of the submitted form data set. A successful control must be
defined within a FORM element and must have a control name.

http://www.w3.org/TR/html401/interac...s.html#h-17.13

The above does not require that a submit button be considered successful -- it merely sets a threshold for such consideration. MS obviously does not
consider the button activated when [Enter] in pressed in the text input.

Who can say why? Perhaps this goes back to the transition from ISINDEX to
text inputs. Good question for the blogs, though.

--
Dave Anderson

Unsolicited commercial email will be read at a cost of $500 per message. Use of this email address implies consent to these terms. Please do not contact me directly or ask me to contact you directly for assistance. If your
question is worth asking, it's worth posting.

Jul 22 '05 #16

This discussion thread is closed

Replies have been disabled for this discussion.