form submission on 'enter'

Heya..

I want the "Enter" key to submit the form.  Instead of clicking on the submit button, i want enter to do this.

must work with both IE and netscape.
LVL 1
Q010797Asked:
Who is Participating?
 
SirCalebCommented:
You need to use the onchange command..
Put this in your <head>:

<script language="Javascript">
<!--
function sendit() {
document.formname.submit(document.formname);
return true;
}
//-->
</script>

Put this in your body:

<FORM NAME="FORMNAME" METHOD="POST" ACTION="/YOUR/PATH.PL">
<INPUT TYPE="TEXT" SIZE=25 VALUE="" onchange="sendit()">
</FORM>

You may have to "tweak" this a little but it should work....
0
 
OttaCommented:
Using "Enter" inside a <TEXTAREA> element
forces a "new-line", rather than doing a "submit".
So, do not use <TEXTAREA> in your <FORM>.
Otherwise, "Enter" works fine to "submit".
Example: http://www.altavista.digital.com
0
 
Q010797Author Commented:
There are no <textarea> tags in the html.
This is the form I want to get working.  Have others too which I am hopeing the same code will fix.

<form name="usage">
<tr><td>Username:</td><td><input type="text" name="username" size="9" maxlength="8"></td></tr>
<tr><td>Password:</td><td><input type="password" name="password" size="9" maxlength="8"></td></tr>
<tr>
<td><center><input type="button" value="Display time used" onClick="displayLocation();"></center></td>
<td><center><input type="reset" value="Clear Information"></center></td>
<tr><td colspan="2"><br><br><br><br><br></td></tr>
</tr>
</form>
0
Ultimate Tool Kit for Technology Solution Provider

Broken down into practical pointers and step-by-step instructions, the IT Service Excellence Tool Kit delivers expert advice for technology solution providers. Get your free copy now.

 
OttaCommented:
The 'altavista' page works fine,
but the "trick" is that there is only one (not two)
<INPUT TYPE="text"> fields,
and there is only one <INPUT TYPE="submit"> fields.

This code works:

<html><head><title>Extracted from AltaVista</title></head><body>
<FORM name=mfrm method=GET action="/cgi-bin/query">
<INPUT NAME=Q size=50 maxlength=80 VALUE="default">
<INPUT TYPE="submit" VALUE="Submit"><br>
</FORM>
</BODY></HTML>
0
 
th_c_manCommented:
Doesn't pressing enter work anyway?

It always does for me.

i use NN4, NN3, or MSIE3
0
 
Q010797Author Commented:
so you're telling me it's impossible?  won't work?
0
 
OttaCommented:
This code works:
This code works:

<html>
 <head>
    <title>Extracted from AltaVista</title>
 </head>
 <BODY>
  <FORM name=myform method=GET action="/cgi-bin/query">
    <INPUT NAME=Q size=50 maxlength=80 VALUE="default">
    <INPUT TYPE="submit" VALUE="Submit">
  </FORM>
 </BODY>
</HTML>

Try it!
0
 
SirCalebCommented:
otta, that will not work in Netscape 3.0
0
 
OttaCommented:
SirCaleb wrote:
> that will not work in Netscape 3.0

It works correctly, in Netscape 2.02 for OS/2.

Maybe, the "correct" answer to Q's question
is "it cannot be done".
0
 
SirCalebCommented:
the answer that I posted works in ALL browsers...I know...I tested it!
0
 
OttaCommented:
SirCaleb,
I tried your code in several web-browsers, and it didn't work.  
You overstate your claim when you say 'ALL'.
The "top 90%" maybe, but not "all",
since not "all" browsers support JavaScript.
0
 
SirCalebCommented:
why would anyone be using a browser without javascript?
That code works in Netscape 3.x and 4.x, Microsoft IE 3.x and 4.x
Those who are using a lower version browser than 3.x just need to get with the times....
0
 
rafisternCommented:
I think your problem is that you are using <input type=button>. Use <input type=submit> and it will work.
0
 
NullTerminatorCommented:
The problem you are all missing is that it will work with a form with one edit control.  With more than one edit control it will not, its that simple.  With HTML 4 and the event bubbling model, you might be able to grab the enter key but I haven't fiddled with it because I need backward compatablitiy with Netscape.
0
 
OttaCommented:
NullTerminator wrote:
> The problem you are  all  missing .., one edit control ...

I alluded to that point in my previous message:

> The 'altavista' page works fine,
> but the "trick" is that there is only one (not two)
>     <INPUT TYPE="text"> fields,
> and there is only one <INPUT TYPE="submit"> field.

0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.