2012-04-13 26 views
1

私はデータベース検索を行うために、単一の入力フィールドを持つjquerymobileページを作りました。入力は、最後にEnterを押すバーコードリーダーによって行われています。私は、送信ボタンを隠し、入力キーでフォームを提出したいと思います。入力キーでフォームを送信する/送信ボタン

Iveは他のスレッドで読み込まれたコードと断片を試してみましたが、役に立たなかった。それはJavaScriptになると私はダンス。その上に

<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> 

(iOSデバイス上で使用すると、フォーカスの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> 

最終的に私は、入力フィールドを非表示にするのが大好きですボタンを提出し、唯一

+0

改行文字を検出することは可能ですか?それが検出されると、サブミット関数を起動することができます – chepe263

答えて

0

document.readyハンドラにあなたのキー押下コードを移動してみてください「スキャン新規」ボタンを持っています。私はあなたがイベントを添付しているときにDOM要素が読み込まれていないと思われます。

$(document).ready(function() { 
    $('#submit').hide(); 
    $('.noEnterSubmit').keypress(function(e){ 
     e.preventDefault(); 
     if (e.which == 13) 
     $('form#search').submit();  
    }); 
}); 
+0

私はこの[スレッド](http://stackoverflow.com/questions/7053335/jquery-mobile-cannot-hide-submit-button)を見つけ、 '$( '# parent( '.ui-btn')。hide(); '。送信ボタンは正常に隠されますが、フォームの最初の送信時にページがリロードされ、送信ボタンが再度表示されます。フォームの2回目の提出時に、結果と送信ボタンが表示されます。とても奇妙な – Brian

+0

私は入力フィールドに焦点を当て続けるために、ajax postメソッドに行きました。私はまだこの質問の解決策を見たいと思います。 – Brian

関連する問題