私は自分のウェブサイトに入れるためのフォームを作成しました。そのフォームで特定の文字列が送信された場合は、URLにリダイレクトしたいと思っていました。しかし、今では、文字列がフォーム内で検出された場合に即座にリダイレクトされ、その文字列が送信された場合にのみリダイレクトされます。この問題を解決するにはどうすればよいですか? "ボタン" に "提出" とonclickの= "MyFunctionを()" を追加し、また、ボタンのラベルを追加し特定の文字列が検出されたにもかかわらず、送信後にフォームが即座にリダイレクトされないようにするには?
<form method="POST" id="myform">
<textarea name="inputBox123" id="myTextarea" oninput="myFunction(this)">
</textarea>
<input type="button" value="Submeter" onclick="myFunction()" />
</form>
<script type="text/javascript">
function myFunction(val) {
var testThis = document.getElementById("myTextarea").value;
if (testThis.indexOf("launch") > -1) {
window.location = 'http://www.cateto.weebly.com/benoit.html';
return false;
}
}
</script>
<form method="POST" id="myform">
<textarea name="inputBox123" id="myTextarea" oninput="myFunction(this)">
</textarea>
<input type="submit" value="Submeter"/>
</form>
<script type="text/javascript">
function myFunction(val) {
var testThis = document.getElementById("myTextarea").value;
if (testThis.indexOf("launch") > -1) {
window.location = 'http://www.cateto.weebly.com/benoit.html';
return false;
}
}
</script>
です。 ['onInput'](https://www.w3schools.com/jsref/event_oninput.asp)はユーザーが何かを入力に書き込むたびに実行されます。あなたの関数を呼び出すために、フォーム上でイベント['onSubmit'](https://www.w3schools.com/tags/ev_onsubmit.asp)を使うべきです。 – Proto