フォームを設定し、入力を検証して別のWebサイト(index.html)にリダイレクトするjavascriptファイル(下図)を用意しました。検証は完全に機能しますが、ポストリターンを表示するのではなく、フォームを希望のページにリダイレクトする方法を理解することはできません。フォームはphpファイル(私はアクセスできない)にポストして、そのファイルの戻り値をindex.htmlに表示したいと思います。フォームのサブミット後にリダイレクト
フォーム:
function validateInput() {
var check = document.forms["form"].elements;
for (var i = 0; i < check.length; i++) {
var test = check[i];
if (test.type === "text" && test.value === "") {
displayMsg("Please fill out all fields" +test.innerHTML);
return false;
}
if (test.type === "date") {
var pattern = /^\d{1,2}\/\d{1,2}\/\d{4}$/;
if (!test.value.match(pattern)) {
displayMsg("Please enter a valid date of birth");
return false;
}
}
else if (test.name === "email") {
var re = /^[\w\-\.\+]+\@[a-zA-Z0-9\.\-]+\.[a-zA-z0-9]{2,4}$/;
if (!test.value.match(re)) {
displayMsg("Please enter a valid email address");
return false;
}
}
}
return true;
}
function displayMsg(msg) {
var ele = document.getElementById("msg");
ele.className = "show";
ele.innerHTML = "<p>" + msg + "</p>";
}
window.onload = function() {
var check = document.forms["form"].elements;
for (var i = 0; i < check.length; i++) {
check[i].addEventListener('click', function() {
var ele = document.getElementById("msg");
if(ele.className != "hide") {
ele.className = "hide";
}
});
}
}
あなたのhtmlフォームを見つけることができません。それがなければ、どのように関数呼び出しを知っていますか? – yash
@yash申し訳ありませんが、コードを追加して編集します – Brittany