お世話になっております。
HTML5でフォームを利用したページを作成しています。
type="email"、requiredなどを用いて、書式検査つきのフォーム入力フィールドを用意しました。
書式検査後に任意のJavascriptを実行させたいのですが、そのようなことは可能でしょうか?
formのaction属性に "javascript:func(this)" のように記載しましたが、送信ボタンをクリックしてお呼び出されませんでした。
(func()は、外部jsファイルに記述されている関数です)
HTML
1<!-- 抜粋 --> 2<form method="POST" action="javascript:func(this)"> 3 <input name="q1" type="text" size=30 required style="ime-mode:active;" onfocus="this.select();"> 4 <input name="q2" type="text" size=30 required style="ime-mode:active;" onfocus="this.select();"> 5 <input name="email" type="email" size=40 required style="ime-mode:inactive;" onfocus="this.select();"> 6 <textarea name="q" cols=60 rows=5 required onfocus="this.select();" style="ime-mode:active;overflow:visible;"></textarea> 7 </dl> 8 <input type="submit" value="送信"> 9</form>
HTML
1<form method="POST" action="javascript:alert('SAMPLE')">
とすれば、アラートは表示されます。
HTML
1<form method="POST" onsubmit="return func(this);">
とすれば、func() は呼ばれます。ただし、入力内容検証前に呼び出されてしまいます。
入力内容検証をパスしたら外部jsファイルにある関数を呼ばせたいのですが、何かの制限でできないのでしょうか?方法をご存じの方、ご教示お願い致します。
ちなみに、手始めとしてIE11でテストしています。
回答2件
あなたの回答
tips
プレビュー