javascriptを使って、
フォームのテキストエリアの入力文字数をチェックし、
オーバーしていれば、アラートを出し、テキストエリアにフォーカスを移動させる。
ようにしようとしています。
IEでは動いてのですが、FireFoxだと上手くフォーカスが移動してくれません。
どこがまずいのか、教えてください。
コード
<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 checkText(aText)
{
if (aText.value.length > 1) {
alert('サイズオーバーです');
aText.focus();
}
}
//-->
</script>
</head>
<body>
<form method="post" action="#">
<input type="text" name="fmTitle" onBlur="checkText(this)">
<input type="text" name="dummy">
</form>
</body>
</html>
No.3ベストアンサー
- 回答日時:
要するに、イベント中に別イベントが発生するのがよろしくないのだと思います。
泥臭い対処ですが、イベントが終了してから実行するような感じでどうでしょうか
----------------------------------------------------------------
var TimeID=null;
function setFocus(fn){
clearTimeout(TimeID);
document.forms[0][fn].focus();
document.forms[0][fn].value +="";
}
function checkText(aText){
if (aText.value.length > 1) {
alert('サイズオーバーです');
//aText.focus();
// TimeID=setTimeout("setFocus('fmTitle')",300);//時間を置いて実行する
TimeID=setTimeout("setFocus('"+ aText.name + "')",300);
}
}
No.2
- 回答日時:
こんばんは。
Firefoxでのエラーとのことですが、現在FireFoxでは.Focus()イベントでエラーが出ることが確認されているようです。Firefoxは未使用なのでこちらでは確認できませんが日本語で書かれているページがありましたので参考URLもご確認ください。
参考URL:http://www2.ns-labs.com/cgi-bin/security_detail_ …
No.1
- 回答日時:
読んでませんがFirefox側のバグかもしれません
calling this.blur() in onfocus handler or this.focus() in an onblur handler do not work
https://bugzilla.mozilla.org/show_bug.cgi?id=53579
ありがとうございます。
せっかく教えていただいたのですが、
英語はちょっと。。。です。
私の手におえなさそうなので、
別チェック方法を考えようかと思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
- PHP PHPのエラーの解消法について教えて下さい。 1 2023/02/06 10:48
- JavaScript switch文のswitch(n)の部分を複数の値にするか、if文に変えてほしいです。 1 2022/07/27 17:18
- JavaScript javascript作成してます。ラジオボタンで判定するコードを書いてます。 1 2023/07/18 11:03
- HTML・CSS ボタンをクリックした時に、入力フォームのすぐ下部に、「入力欄が空白です」というテキストメッセージが表 1 2022/04/27 16:25
- JavaScript セレクトボックスを2つ設けて選択して初めてメッセを表示 1 2022/07/27 12:15
- PHP 入力した部分を表示させたまま(保持)するにはどうすれば良いでしょうか? 1 2023/01/25 11:14
- JavaScript javascriptのちょっとした動作不良(原因は突き止めたのですが) 1 2023/06/15 19:58
- JavaScript ①入力フォーム→②確認表示画面→③送信完了画面のコードを書いているのです、 入力フォームから受け取っ 2 2022/05/10 16:45
- PHP PHPでCookieを使った訪問回数について 1 2023/05/28 14:10
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【Javascript】(テキストボッ...
-
TextBoxに半角数字以外を入れた...
-
フォームの内容でリンク先URLの...
-
プルダウンで選択された値を別...
-
jQueryのdatepickerの日付が選...
-
javascriptのちょっとした動作...
-
JSPでonChangeを強制発行するに...
-
フォームのPOSTデータをサブウ...
-
ページ間で変数を保持したい
-
マイナスなら赤字で表示したい...
-
FireFoxでfocus()が上手く動かない
-
onBlurのイベントを使ってデー...
-
カーソルが当たった箇所に吹き...
-
ユーザー入力値の正誤判定をブ...
-
IE上のカーソル位置に文字列を...
-
GetElementByIdがうまく取得で...
-
return trueとreturn falseの用...
-
<JavaScript>tableタグを入力不...
-
【jQuery】input nameの文字列...
-
onchangeイベントを強制的に発...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
TextBoxに半角数字以外を入れた...
-
ページ間で変数を保持したい
-
HTMLファイル同士での値渡し
-
tabindexの取得
-
プルダウンで選択された値を別...
-
マイナスなら赤字で表示したい...
-
フォームの内容でリンク先URLの...
-
テキストエリアに履歴を残したい
-
テキストボックスに入力した色...
-
イベント発生順序
-
どちらかひとつのテキストボッ...
-
HTMLとJavaScriptで作った表示...
-
VBSからjavascript
-
GetElementByIdがうまく取得で...
-
大文字か小文字かを判断する方法
-
JSPでonChangeを強制発行するに...
-
VBScriptでpingを実行(ブラウザ...
-
javascriptのちょっとした動作...
-
VBscriptの配列変数をJavascrip...
-
画像の表示非表示について質問です
おすすめ情報