- ベストアンサー
input type="image"の時、enterでsubmitされない方法
http://oshiete1.goo.ne.jp/kotaeru.php3?q=115527 で、「enterでsubmitされない方法」が記載されているのですが、 input type="image"の時、うまく反映されません。 formタグには以下のように、 <form name="form1" method="post" action="" onSubmit="return false"> 送信ボタンは以下のように設定しています。 <input type="image" src="***.gif" onClick="submit();"> ちなみにinput typeを"button""submit"にすると反映してくれますが "image"ではうまくいきません。 ご回答よろしくお願いします。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
こんにちはcmoneyさん、xruzです。 回避の回避です <Html> <Head> <Title>noEnter</Title> </Head> <Script Language="JavaScript"> <!-- var noEnter=false; function on13() {noEnter=true;} function off13() {noEnter=false;} function keyCheck() {if(event.keyCode==13&&noEnter) return false;} document.onkeydown=keyCheck; //--> </Script> <Body> <form method="GET" name="f"> <input type="image" name="i" src="a.gif" onfocus="on13()" onblur="off13()"> <textarea name="ta" cols="20" rows="3"></textarea> </form> </Body> </Html> がんばってくださいね(~:~i
その他の回答 (3)
- A__
- ベストアンサー率47% (22/46)
下の No2 の書き込みは間違えてました。 ごめんなさい。 Enterキーで submit されないようにする方法として <input type=submit> というのを書かない方法もあるよ。 あんまり自身がないけど <input type="image" src="***.gif" onClick="submit();"> の onClick="submit();" は書式的に無効だと思いました。
- A__
- ベストアンサー率47% (22/46)
テキストエリアにフォーカスがある時にEnterで 送信するなら、JavaScript で <textarea onClick=フォーム.submit()> とする方法もあるよ。
- xruz
- ベストアンサー率50% (72/143)
こんにちはcmoneyさん、xruzです。 一応これで回避できますが、textareaなどで改行もできなくなります。 <Html> <Head> <Title>noEnter</Title> </Head> <Script Language="JavaScript"> <!-- function keyCheck() {if(event.keyCode==13) return false;} document.onkeydown=keyCheck; //--> </Script> <Body> <form method="GET" name="f"> <input type="image" name="i" src="a.gif"> </form> </Body> </Html> がんばってくださいね(~:~i
補足
xruzさん、ご回答ありがとうございます。 早速対応してうまく動きました。 ただ、1箇所だけテキストエリアがあってやはり改行したいのですが…。 現在テキストボックスが2箇所、テキストエリアが1箇所あり、 テキストボックスでenterを押してもsubmitされず、 テキストエリアでenterを押すと改行されるような方法が ありましたら教えください。 よろしくおねがいします。。