1 つの php ファイルを呼び出して、すべての検証値を 1 つの関数に統合しようとしています。なんとか検証できましたが、あるフィールドを検証すると、別のフィールドメッセージも出てきます。
形:
<input name="SNo" type="text" id="SNo" onkeyup="Validate(this.value)" value=""/> <span id="validateNumbers"></span>
<input name="Names" type="text" id="Names" onkeyup="Validate(this.value)" value=""/><span id="validateNames"></span>
Javascript 関数:
function Validate(value) {
var SNo = document.getElementById('SNo').value;
var Names = document.getElementById('Names').value;
if (str == SNo) {
if (str.length == 0) {
document.getElementById("validateNumbers").innerHTML = "Must not be blank";
return;
}
if (window.XMLHttpRequest) xmlhttp = new XMLHttpRequest();
} else { // code for IE6, IE5
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
document.getElementById("validateNumbers").innerHTML = xmlhttp.responseText;
}
}
xmlhttp.open("GET", "functions/validate.php?SNo=" + str, true);
xmlhttp.send();
} else if (str == Names) {
//same coding as if statement
} else {}
}
したがって、空白のままにすると、validateNumbers と validateNames の両方のエラー メッセージが他のメッセージと同様に表示されます。私はループを使用しませんでしたが、なぜそれが繰り返されるのでしょうか..アドバイスしてください。