2012-04-13 10 views
1

Ich mache eine kleine jquerymobile-Seite mit einem einzigen Eingabefeld, um eine Datenbanksuche durchzuführen. Die Eingabe erfolgt durch einen Barcodeleser, der am Ende die Eingabetaste drückt. Ich möchte den Absenden-Button ausblenden und das Formular mit der Enter-Taste abschicken lassen.Formular mit Eingabetaste senden/Übermittlungsschaltfläche ausblenden

Ich habe versucht, Bits und Teile des Codes in anderen Threads gelesen, aber ohne Erfolg. Ich bin eine Dummheit, wenn es um Javascript geht.

<script type="text/javascript" language="JavaScript"> 
    $(document).ready(function() { 
     $('#submit').hide(); 
    }); 
$('.noEnterSubmit').keypress(function(e){ 
    if (e.which == 13) 
    $('form#search').submit(); 
    e.preventDefault(); 
    return false; 
}); 
</script> 

oben auf, dass ich eine Schaltfläche, die auf dem Eingabefeld fokussiert, wenn sie gedrückt (weil auf iOS-Geräten Ihnen schrägen Kraft Fokus onload)

<form action="#CGI.SCRIPNAME#" method="post" name="search"> 
<label for="season_pass_id">Season Pass ID</label> 
<input class="noEnterSubmit" type="password" name="season_pass_id"> 
<input id="submit" type="submit" name="submit" value="submit" > 
<input type="button" name="mybutton" value="Scan New" OnClick="document.search.season_pass_id.focus();"> 
</form> 

schließlich würde ich gerne das Eingabefeld verstecken und die Schaltfläche "Senden" und nur die Schaltfläche "Neu scannen"

+0

Ist es möglich, eine neue Zeile char zu erkennen? Wenn es erkannt wird, kann die Submit-Funktion ausgelöst werden – chepe263

Antwort

0

Versuchen Sie, den Tastendruck in den Handler document.ready zu verschieben. Ich vermute, dass das dom-Element beim Anhängen des Ereignisses nicht geladen wurde.

+0

Ich fand dieses [thread] (http://Stackoverflow.com/questions/7053335/jquery-mobile-cannot-hide-submit-button) und verwendete '$ ('# submit_btn '). eltern ('. ui-btn '). verstecken(); '. Der Submit-Button wird erfolgreich ausgeblendet, aber beim ersten Senden des Formulars wird die Seite neu geladen und der Submit-Button erneut angezeigt. Bei der zweiten Einreichung des Formulars gibt es meine Ergebnisse und den Absenden-Button. so seltsam – Brian

+0

Ich ging zu einer Ajax-Post-Methode, um meinen Fokus auf das Eingabefeld zu halten. Ich würde trotzdem gerne eine Lösung für diese Frage sehen. – Brian

Verwandte Themen