• ベストアンサー

リロードしないようにするには

<FORM onSubmit="if (this.elements[0].value==m2[m]) {alert('正解です!')} else { alert('間違い'); return false;}"><INPUT type="text" value=""> <INPUT type="submit" value="入力後ここを押す"></FORM> このプログラムをhtmlに組み込んで実行すると 正解の時に、リロードというかhtmlファイルのあるサーバーにアクセスしてしまいます。 どうしてでしょうか? あまりサーバーに負担をかけたくないのでどうにかしたいのですが どうかお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • hira6bg
  • ベストアンサー率61% (8/13)
回答No.2

いっそのことsubmitをやめちゃう方法もあります。 ○JavaScriptに正誤判定関数hanteiを追加 <head> <script language="javascript"> <!-- function hantei () { if(FM.INP.value=='答'){ alert('正解です!');} else{ alert('間違い'); } --> </script> </head> ○submitボタンをやめてただのボタンとし、ボタン押下でhanteiをキック <FORM name="FM"> <INPUT type="text" name="INP" value=""> <INPUT type="button" value="入力後ここを押す" onclick="hantei();"> </FORM>

その他の回答 (1)

回答No.1

正解の場合に return false; を通らないからです。 <FORM onSubmit="if (this.elements[0].value=='a') {alert('正解です!')} else { alert('間違い');}; return false;"> <INPUT type="text" value=""> <INPUT type="submit" value="入力後ここを押す"> </FORM>

関連するQ&A