Kann mir jemand sagen, wie ich ein HTML-Formular abschicken kann, wenn die Return-Taste gedrückt wird und keine Schaltflächen im Formular vorhanden sind? Die Schaltfläche "Senden" ist nicht vorhanden . Ich verwende stattdessen ein benutzerdefiniertes Div.
Antworten
Zu viele Anzeigen?Ich glaube, das ist es, was Sie wollen.
//<![CDATA[
//Send form if they hit enter.
document.onkeypress = enter;
function enter(e) {
if (e.which == 13) { sendform(); }
}
//Form to send
function sendform() {
document.forms[0].submit();
}
//]]>
Jedes Mal, wenn eine Taste gedrückt wird, wird die Funktion enter() aufgerufen. Wenn die gedrückte Taste mit der Eingabetaste (13) übereinstimmt, wird die Funktion sendform() aufgerufen und das erste gefundene Formular wird gesendet. Dies gilt nur für Firefox und andere standardkonforme Browser.
Wenn Sie diesen Code nützlich finden, stimmen Sie bitte für mich!
Verwenden Sie das folgende Skript.
<SCRIPT TYPE="text/javascript">
<!--
function submitenter(myfield,e)
{
var keycode;
if (window.event) keycode = window.event.keyCode;
else if (e) keycode = e.which;
else return true;
if (keycode == 13)
{
myfield.form.submit();
return false;
}
else
return true;
}
//-->
</SCRIPT>
Für jedes Feld, das das Formular abschicken soll, wenn der Benutzer die Eingabetaste drückt, rufen Sie die Funktion submitenter wie folgt auf.
<FORM ACTION="../cgi-bin/formaction.pl">
name: <INPUT NAME=realname SIZE=15><BR>
password: <INPUT NAME=password TYPE=PASSWORD SIZE=10
onKeyPress="return submitenter(this,event)"><BR>
<INPUT TYPE=SUBMIT VALUE="Submit">
</FORM>
Ich verwende diese Methode:
<form name='test' method=post action='sendme.php'>
<input type=text name='test1'>
<input type=button value='send' onClick='document.test.submit()'>
<input type=image src='spacer.gif'> <!-- <<<< this is the secret! -->
</form>
Im Grunde genommen, Ich füge einfach eine unsichtbare Eingabe vom Typ Bild hinzu (wobei " spacer.gif " ist ein transparentes 1x1-Gif).
Auf diese Weise kann ich dieses Formular entweder mit der Schaltfläche "Senden" oder einfach durch Drücken der Eingabetaste auf der Tastatur.
Das ist der Trick!
Wenn Sie asp.net verwenden, können Sie die defaultButton Attribut auf dem Formular.