- ベストアンサー
一部Enter無効化の方法を教えてください!
PHPで作成している画面について、テキストコントロールにフォーカスがある場合に、 Enterキーを押下することで、submitが行われることを無効化させたいと思っています。 <SCRIPT LANGUAGE=javascript> <!-- document.onkeypress = enter; function enter(){ if( window.event.keyCode == 13 ){ return false; } } //--> </SCRIPT> のようなJavaScriptを記述すれば完全にEnterキーを無効にできるようですが、 この状態だと、submitにフォーカスがある状態でEnterキーを押下してもsubmitが実行されません。 この状態を解決する方法をご存知の方、アドバイスをお願いします!! ちなみにブラウザは最低でも、IE6,7とFireFoxには対応したいと思っています。 当方、HTML,PHP,JavaScriptは素人同然ですので、明確な内容で教えて頂けると助かります。 宜しくお願いします!!
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
すみません、気になったのちょっと横槍を失礼…… 「テキストコントロールのときだけ」無効ならば以下ですね。 <html> <head> <title>テキストがアクティブのときだけエンターきかない</title> </head> <body> <form id="form1" name="form1" action="http://localhost/"> テキストA:<input type="text" name="arrowhead"><BR> チェック:<input type="checkbox" name="delta"><BR> テキストB:<input type="text" name="ladylove"><BR> ラジオ:<input type="radio" name="wavemaster"><BR> セレクト:<select name="morningglory"> <option>セレクト </select><BR> <input type="submit" value="サブミット"><BR> </form> </body> <script type="text/javascript"> <!-- //@cc_on document./*@if(1) attachEvent( 'on' + @else@*/ addEventListener( /*@end@*/ 'keypress', function( evt ) { var target = evt./*@if(1) srcElement @else@*/ target /*@end@*/; var keyCode = evt./*@if(1) keyCode @else@*/ which /*@end@*/; if( /text/i.test( target.type ) && keyCode == 13 ) { /*@if(1) evt.returnValue = false; @else@*/ evt.preventDefault( ); /*@end@*/ } }, false ); //--> </script> </html> 違う部分を探せば分かると思いますが、今後の学習などの参考になればと思い投稿いたしました。
その他の回答 (2)
- babu_baboo
- ベストアンサー率51% (268/525)
よこやりによこやり。 いとしないときに、まちがって えんた~をたたくと とんでしまうよ~。なので・・・。ばぶ。
- yuu_x
- ベストアンサー率52% (106/202)
<script type="text/javascript"> <!-- //@cc_on document./*@if(1) attachEvent( 'on' + @else@*/ addEventListener( /*@end@*/ 'keypress', function( evt ) { var target = evt./*@if(1) srcElement @else@*/ target /*@end@*/; var keyCode = evt./*@if(1) keyCode @else@*/ which /*@end@*/; if( !/submit/i.test( target.type ) && keyCode == 13 ) { /*@if(1) evt.returnValue = false; @else@*/ evt.preventDefault( ); /*@end@*/ } }, false ); //--> </script>
お礼
ありがとうございました! 無事対応できました!!
お礼
細かい回答ありがとうございました! 無事対応できました!