onclickで画面遷移

こんにちは、さるまりんです。

<form>タグに囲まれたボタンでフォームをサブミットするのではなく単純に別のページへ遷移したいことがあります。

例えば複数ページで構成される入力フォームで「次へ」ではフォームをサブミットして、「戻る」では単純に前のページに戻る場合です。

どうやろうかな?と考えていたら<button><input type="button">onclickを思いついきました。

onclicklocation.hrefで飛び先ページを設定すると可能になります。

<button>タグ

<button type="button" onclick="location.href='[遷移先]">

<input>タグ

<intput type="button" onclick="location.href='[遷移先]">

ハマったのは<button>typeを設定していない時にsubmitボタンとして機能してしまい、<form>に設定しているactionが実行される、フォームがサブミットされ、期待した遷移が起こらないことがありました。

type="button"location.hrefが今回のハートでした。(大袈裟)

読んでくださってありがとうございました。

それではまた!