JavaScriptで質問です。

HTMLに
<input type=text name="rewrite" value="">
として記入しているのですが
このアドレスにアクセスした際に
text部分にフォーカスされてマウスでクリックしなくても書き込みが開始されるようにしたいのですが
どのようにJavaScriptを付け足せばよいでしょうか?
アドバイスいただければと思います。

回答の条件
  • 1人2回まで
  • 登録:
  • 終了:2007/01/19 13:11:53
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答5件)

id:coliss No.1

回答回数79ベストアンサー獲得回数10

ポイント20pt

bodyタグのonloadなどに入れてください。

onload="document.[フォームのname].rewrite.focus()"

※「フォームのname」は、form name="form1"であれば、onload="document.form1.rewrite.focus()"になります。

id:quocard

ありがとうございます。

参考にさせていただきます。

2007/01/19 13:08:39
id:SALINGER No.2

回答回数3454ベストアンサー獲得回数969

ポイント20pt
<!--
window.onload = start;
function start(){
	document.forms[0].elements["rewrite"].focus();
}
// -->

こんな感じでどうでしょう

id:quocard

参考にさせていただきます。

2007/01/19 13:09:28
id:KirakiraHikaru No.3

回答回数354ベストアンサー獲得回数68

ポイント20pt

下記を参考にしてみてください。

http://www.tagindex.com/javascript/form/focus.html

<body onLoad="document.all.rewrite.focus()">

onLoadイベントで指定テキストにフォーカスを設定。

※フォーム名がわからないのでdocument.allとしています。

id:quocard

シンプルでよさそうです。

ありがとうございます。

2007/01/19 13:10:15
id:gexpr No.4

回答回数11ベストアンサー獲得回数0

ポイント20pt

HTMLのbodyタグを

<body onload="rewrite.focus()">

<input type=text name="rewrite" value="">

</body>

と書き換えれば一応動きます。

しかしname属性での指定は今後廃止されていく傾向にあるようなので、

<input type=text name="rewrite" id="rewrite" value="">

と、id属性での指定を加えた方が良いかもしれません。

また、ヘッダーの部分にJavaScriptを記述する方法もあります。

<head>

<script type="text/javascript">

<!--

function init() {

document.getElementsByName("rewrite")[0].focus();

}

window.onload = init;

// -->

</script>

</head>

こっちのほうが一般的かもしれません。(一部タグ<>を全角文字にしています)

id:quocard

なるほど。

今後のことを考えたらIDにしたほうがいいかもしれませんね。

ありがとうございます。

2007/01/19 13:10:50
id:Yuhto No.5

回答回数19ベストアンサー獲得回数0

ポイント28pt

bodyタグのonloadイベントが主流かもしれませんが、

ワタシなら、以下をhtmlタグ終了後に書き足して済ませます。

<script>
document.forms[0].rewrite.focus();
</script>

理論的には、イチバン妥当な気がします。

ロード中にエスケープされたら、ヘンなことになったりすることを思うと、

  • 確実に実行させたい
  • でも、実行時にエラーが起きても影響がないようにしたい
  • それでいて、シンプルで分かり易い

なんて考えてしまうと、

とりあえずHTMLはレンダリングを完了してから、

その後、つまりhtmlタグ終了後にscriptタグで、実行させる・・・

邪道ですかね?

id:quocard

ありがとうございます。

追加するだけで簡単そうですね。

シンプルなので判りやすいです。

参考にさせていただきます。

2007/01/19 13:11:28

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません