- ベストアンサー
テキストエリアでの処理に関して
- テキストエリアでの処理について、ダブルクリックイベントや入力に応じたデータベース検索の仕組みを考えています。
- 特定のテキストエリアでのダブルクリックイベントにより、サブウィンドウを開くと同時にデータベースから情報を取得し、親ウィンドウの隣のテキストエリアに表示します。
- また、テキストエリアへの入力がある場合にもデータベース検索が行われるようにしたいと考えています。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
こんにちは <script language="JavaScript"> <!-- function numCheck(fObj){ if(fObj.myTEXT.value.length >6) { openwin(); } } function openwin() { window.open("sample.html","OpenWindow","width=100,height=100"); } //--> </SCRIPT> </head> <body> <form> <a ondblclick="openwin()"><input type="text" name="myTEXT" onKeydown="numCheck(this.form)"></a> </form> としたら可能だとは思いますが・・・ テキスト文字6文字越え=>openwindowではポップアップブロックされるため別の方法を考慮された方がよいかと・・・
その他の回答 (3)
- 神崎 渉瑠(@taloo)
- ベストアンサー率44% (1016/2280)
> ANo.3 > ウェブページではシングルクリック=実行というのが基本ですので、onclickの方がいいと思います。(ondblclickでは2回実行される可能性があるため) なんか言い方が変だったので言い直し。 ダブルクリックでは実行されない(ダブルクリックしてもらえない)可能性があるため、 onclickで実行してもらうようにした方がいいと思います。 onclickとondblclickを1つのページで混在させると ダブルクリックしか動かないと思ってダブルクリックしたが、実はシングルクリックで良かった、 しかもダブルクリックではなく「クリックが2回」という判断がされた。 そういう場合にonclickが2回実行されます。
- 神崎 渉瑠(@taloo)
- ベストアンサー率44% (1016/2280)
> そもそも同じテキストエリアでダブルクリックはサブウィンドウ、 > 入力後は他の処理というような事が可能なのでしょうか。。。 ondblclickとonkeyupを別々に指定すれば出来ると思います。 <form action="search.cgi" target="_blank"> <textarea ondblclick="this.form.submit();" onkeyup="if(this.value.length>=6)this.form.submit();"></textarea> <input type="submit"> </form> テキストエリア=<input type="text">ということなんでしょうか? それなら<textarea>を読み替えてください。 以下は全く個人的な見解なので、無視してもらってもかまいません。 テキストエリアでもテキストフィールドでも、 一般的にはダブルクリックは文字を選択するために使う物ですし、 おそらくユーザーが予期しない動作をすることになりますから、あまり使わない方がいいと思います。 イメージフィールドや送信ボタンを設置し、それを押してもらう方がいいと思います。 MacやWindows(OS)のアイコンは初期設定ではシングルクリック=選択、ダブルクリックで実行ですが、 ウェブページではシングルクリック=実行というのが基本ですので、onclickの方がいいと思います。(ondblclickでは2回実行される可能性があるため)
- yambejp
- ベストアンサー率51% (3827/7415)
onkeyupやonkeydownなどでチェックをいれればよいでしょう。 ただ、任意のsubmitではなくDBを検索させると、無駄なデータの やりとりが多くなるので避けた方がよいかと。 サンプル <script language=javascript> function test(obj){ if(obj.value.length>=6) alert(obj.value) } </script> <form> <input onKeyup="test(this)"> </form>