- - PR -
TextBoxのEnter時イベント
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2003-04-16 11:35
現在、TextBox、DropDownList等で情報を入力し登録ボタンによって
DBに情報を反映させるといった処理を行っているのですが、 TextBox内でEnterボタンを押下すると配置してある先頭(?)のボタンの Clickイベントが発生してしまって困っています。 TextBoxを配置するとHTML上ではSubmitボタンとなるので、 仕様といわれてしまったらそれまでなのですが、 何か対処方法がありましたらご教授ください。 よろしくお願いします。 (VS.NET、ASP.NET、VB.NET) |
|
投稿日時: 2003-04-16 11:51
否かっぺいと申します。
formのonkeydownでevent.keyCodeが13(Enterキー)の場合、無効にすれば よろしいかと思います。 |
|
投稿日時: 2003-04-16 12:12
ダミーのsubmitボタンをテキストボックスの直後に配置して、
スタイルの指定で非表示にしておく、っていうのはどうでしょ うか? 検証してないので有効かどうかはっきり言えないので すが・・・。 #ブラウザを選ぶかもしれませんし・・・ |
|
投稿日時: 2003-04-16 12:48
こんにちは。
いしさんの方法でEnterキーの対応をしたことがあります。 submitボタンをHTML上で一番上になるようにしました。 画面上で一番上においたつもりでもGridLayoutだとビミョウに違って たりするので。。 ブラウザはIE(5.0以上)しか試してませんが特に問題はありません でした。 |
|
投稿日時: 2003-04-16 14:56
こんにちは。
過去ログで同様の話があるようです。 検索時に、"Enterキー"で絞り込んでみてください。 画面内にTextBoxが複数ある時に、そのような動作になるみたいですね。 TextBoxが1つの時はそうならないみたいです。 |
|
投稿日時: 2003-04-17 09:31
否かっぺいさん、いしさん、yooさん、Qooさん回答ありがとうございます。
早速試してみました。 ・ダミーボタンを用意する。 ⇒ボタンのHeight、Widthを0に設定する事により、 非表示にし想定していないイベントの発生を制御。 ・JavaScriptでEnterボタンをキャンセルする。 ⇒<FORM id="Form1" method="post" runat="server" onkeydown="if(event.keyCode==13){ if(window.event.srcElement.type=='text'){return false;}}"> を記述することによりTextBoxのイベントの発生を制御。 教えて頂いた方法により、無事に想定外のイベントの発生を 制御する出来ることが出来ました。 .NETなのに・・・という気持ちは残りますが・・・ 多数の回答ありがとうございました。 |
1