1. ホーム
  2. Web制作
  3. HTML/Xhtml

ボタンで送信の種類が指定されておらず、ボタンをクリックしても指定されたURLにジャンプしない

2022-01-16 14:25:39
今日、プロジェクトの要件により、フォームの送信を制御し、送信前にデータを検証し、処理するためのjsが必要です。

htmlのコードは以下の通りです。
コピーコード
コードは以下の通りです。

<div class="test-ft">
<h3 class="shouji">Mobile phone numbers for bad luck</h3>
<form needcheck="1" method="post" target="_blank" action="http://www.go108.com.cn/go108_mobile_ free_sz.php">
<p>
...
</p>
<button class="btn-act">Measure Now</button>
</form>
</div>

コーディングが終わった後、ブラウザの互換性テストをすると、ie6、ie7ではボタンが反映されず、指定したurlがジャンプしないが、他のブラウザでは正常にジャンプできる、という問題がある。
jsの制御コードに問題があるとずっと思っていて、長い間デバッグを追ったのですが、問題が見つかりませんでした。
過去にそのような問題に気づかず、穴を踏んでしまったことがあったので、それを検証するために情報を検索してみました。
ボタンのtypeプロパティについては、w3shoolに詳細な説明があります。
https://www.jb51.net/w3school/tags/att_button_type.htm
コピーコード
コードは以下の通りです。

Definition and Usage The type attribute specifies the type of the button. Tip: Always specify the type attribute for buttons. the default type for Internet Explorer is "button", while the default value in other browsers (including the W3C specification) is "submit". As you can see, the default button submits the form when clicked in other browsers, while ie does not submit the form when clicked by default, and the default value of type is also a browser compatibility issue, so mark it.