
javascriptで困っています。助けてください。
テキストボックスに入力された値をonChangeで検出し、入力内容をチェックしようとしています。
テキスト入力後、テキストボックスからフォーカスを外せば、問題なく作動するのですが、
テキストを入力し、フォーカスを外さずに、そのまま送信ボタンを押すと、
チェック結果を待たずに、次のファイル(画面)に移ってしまいます。
多分、onChangeを使う上で、よく発生する問題かと思うのですが、
みなさん、どのように回避されているのでしょうか?
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=euc-jp">
<meta http-equiv="Content-Script-Type" content="text/javascript">
<script type="text/javascript">
<!--
function check(){
alert('チェック');
}
//-->
</script>
</head>
<body>
<form method="get" action="reg.php">
タイトル<br>
<input type="text" name="title" onChange="check()"><br>
<input type="submit" value="送信"><br>
</form>
</body>
</html>
No.4ベストアンサー
- 回答日時:
<form>
<input type="text" onkeyup="document.getElementById('orz').disabled=this.value!='test'"/>
<input id="orz" type="submit" disabled="true"/>
</form>
IEとFFで、submitが押されたときの画面遷移のタイミングが違うので、
(FFだとonsubmitをハンドルしないとだめっぽい)、チェックを通らない限りsubmitボタンを押せなくしてしまうというのが、わかりやすくていいかもしれません。
ありがとうございます。
この方法で、狙いの機能が実現できました。
ご回答頂いた、皆様にも、お礼を申し上げます。
どうも、ありがとうございました。
No.3
- 回答日時:
titleに対して onkeypressイベントを記述してはいかがでしょう
<input type="text" name="title" onChange="return check();" onKeypress="return keycheck();">
として
function check()
{
window.alert('チェック');
// titleの入力がtestならOK それ以外は NG
return window.event.srcElement.value == "test";
}
function keycheck()
{
if ( window.event.keyCode == 0x0D ) {
return check();
}
return true;
}
No.2
- 回答日時:
通常はformにonSubmitを設定してチェックします
この回答への補足
ご回答ありがとうございます。
サンプルのコードではテキストボックスが1つですが、実際には同一画面に複数のテキストボックスを設定しようとしています。(タイトル、コメント、カテゴリなど)
また、データベース内で、タイトルが重複しないように使用としています。
このため、全てを入力した後チェックをすると、タイトルが重複していた場合、全ての入力が無駄になってしまいます。
そこで、タイトルの入力が終了した時点で、チェックを行いたいのです。
説明不足で申し訳ございませんでした。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
2重でメール入力チェックをした...
-
手書き入力モードを利用して、...
-
onClickとsubmitの処理順序
-
JavaScriptのアレンジがしたいです
-
WebサイトにOutlookマクロ(V...
-
日付入力欄の表示形式を自動的...
-
JSPとJavaScriptの連携について...
-
プルダウンで選択すると、DBの...
-
ハイパーリンクを別ウインドウ...
-
ラジオボタン未チェックの場合...
-
COBOLの数字チェック
-
<JavaScript>tableタグを入力不...
-
hiddenを動的に作成したい
-
JavaScriptでラジオボタンのチ...
-
データベースの値を判断してラ...
-
javascript name="hoge"等に記...
-
入力フォームに半角スペース以...
-
テキストボックスの入力をリセット
-
Excelで作ったhtmlファイルのサ...
-
VBScriptでHTMLのセレクトボッ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
条件により、リンク先に画面遷...
-
onClickとsubmitの処理順序
-
JSPとJavaScriptの連携について...
-
javascriptで入力フォームが空...
-
日付入力欄の表示形式を自動的...
-
文末の改行コードを削除したい
-
テキストボックス入力を半角英...
-
Webブラウザにてページのりロー...
-
テキストボックスを無効にする...
-
JQueryで2つのテキストフィー...
-
入力モード 自動 切り替え
-
HTMLで入力したものを変数で扱...
-
フォームの<TEXTAREA>で文字数...
-
PDFフォームで条件つき金額を表...
-
数字の1文字目を消したい
-
イベント発生時に入力待ち状態...
-
入力した文字を大文字に変換し...
-
submit後、同じ入力欄に戻らせ...
-
フォームから入力すると、入力...
-
onChangeの使い方について教え...
おすすめ情報