WEB相談室

Webページ作成に関しての何でも掲示板です。

タイトル:テキストフィールドの文字入力を上書モードにしたい

0:[投稿] やす [2003/02/21 15:16 ][環境:IE5.5 WIN2000]

お世話になります。

テキストフィールドへカーソルがきたときに文字入力を
挿入モードでなく、上書モードにしたいと思っています。
通常は挿入モードですが「insert」ボタンを押すことで
上書きに変わるので、それと同じような動きをさせるために
onFocusイベントで以下の関数を呼ぶようにしました。

function insert()
{
 event.keyCode = 45;
}

しかし、上書きモードとはなりませんでした。

原因、回避策等をご存じの方がいらっしゃいましたら
アドバイスお願い致します。


1:[回答] gun [2003/02/24 09:00 ]

きちっとした回答ではありませんが。
そもそもIEには"上書きモード"自体が無搭載
だということだと思うのですがいかがでしょう


2:[質問] やす [2003/02/24 09:53 ]

テキストフィールドにカーソルをあててから
「insert」ボタンを押すと
文字入力は上書きで行うことができます。
#無搭載の意味をはきちがえてたらすいません

が、ご指摘頂いていろいろ試して気づいたのですが、
全角入力の場合は”上書きモード”が無効になってしまうようです。

今回の要件としては全角、半角両方について
考える必要があるのでどっちにしても無理かもしれません。

それにしても半角の場合は「insert」ボタンが有効なはずなのに
なぜ上書きモードにならないんでしょう…?


3:[回答] gun [2003/02/24 14:44 ]

あ。。。
ゴメンナサイ。
自分の環境でも挿入になることを確認しました。


4:[回答] ひじ [2003/02/24 22:53 ]

>それにしても半角の場合は「insert」ボタンが有効なはずなのに
>なぜ上書きモードにならないんでしょう…?

イベントについて誤解があると思います。

イベントはユーザが何らかのアクションをとったときに発生し、そのユーザの
アクションがeventオブジェクトに入れられてJScript側に送られてきます。
eventオブジェクトは、JScript側で処理が行われた後は捨てられます。
そのeventオブジェクトに何か代入しても、再びイベントが発生するわけではありません。
覆水盆に帰らず。

やるとすれば、イベントが起こった後にInsertボタンを押したのと同じ動作をJScriptに行わせるか、JScriptでイベントを発生させるかということになるでしょうか。
(私はどちらのやり方も知らないのですが…。無責任ですみません)


5:[回答] やす [2003/02/25 11:46 ]

ご回答ありがとうございます。

>やるとすれば、イベントが起こった後にInsertボタンを押したのと同じ動作をJScriptに行わせるか、JScriptでイベントを発生させるかということになるでしょうか。

最初に書いたのがイベントが起こった時に(onFocusイベント時)に
Insertボタンを押したのと同じ動作(event.keyCode = 45;)と
したつもりだったんですが…
keyDownイベントを使った場合でも同じでした。
event.keyCodeを指定することで動作する場合もあるんですけどねぇ…
タブ(event.keyCode = 9;)とかはOKでした。
どちらにしても無理ぽいですね。


6:[回答] ちゃいぱ [2003/02/25 14:38 ]

IE系なら以下でどうですか?

<form>
<TEXTAREA ROWS=8 COLS=60 NAME="body" onFocus="document.execCommand('overwrite')">
1234567890
ちゃいちゃんパパ
</TEXTAREA>
</form>

尚、上記でも漢字に関してはダメだけど、insertキーでもダメですね。


7:[完了] やす [2003/02/25 16:16 ]

ご回答ありがとうございます。

半角に関しては上書になりました
これで十分です!
全角の上書はどうしようもなさそうなので
仕様ということで押し切ります(^^;

ちゃいぱさん、本当にありがとうございました。


8:[完了] ちゃいぱ [2003/02/25 16:23 ]

いえいえ、実は、某JSオールキャストMLで、教えていただきました。

http://www.fureai.or.jp/~tato/js-ml/jsml.htm

回答(必須): 状態:

お名前(必須):

e-mail:

URL:




[戻る]

ChaichanPAPA's World