나는 유효성 검사를위한 몇 가지 기능과 그 안에있는 모든 유효성 검사 함수를 호출하는 "validation()"이라는 또 다른 기능이 있습니다. 제출 된 양식 앞에이 함수가 호출되고 차례로 실행되는 함수가 호출되며 그 중 하나가 false를 반환하면 다음 함수는 호출하지 않습니다. 내 요청은 내가 어떻게 그들을 독립적으로 부를 수 있느냐이다. 여기
내 코드의 조각 :함수를 독립적으로 호출하는 방법은 무엇입니까?
function IsEmail() {
rows = document.getElementById('txtRows').value.split('#');
types = document.getElementById('txtTypes').value.split('#');
var CorrectFormat = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
msg_req = "";
var flg = true;
for (i = 0; i < rows.length; i++) {
if (types[i] == "email") {
var ctrl_val = document.getElementById('ctrl-' + i).value;
if (!CorrectFormat.test(ctrl_val)) {
msg_req += "invalid format ! \n";
flg = false;
}
}
}
if (flg)
return true;
else
return false;
}
function validations() {
if (!(required_field()) || !(Is Email())) {
var str = "there are some errors :\n";
if (msg_req != "") {
str += msg_req;
alert(str);
}
msg_req = "";
return false;
}
else {
msg_req = "";
return true;
}
}
나는이 잘못된 것일 수도 있지만,이 두 기능 (required_field 및 ISEMAIL가) msg_req라는 인스턴스 변수를 변경하는 부작용이 있습니다 것으로 보인다. 나는 그런 것들을 너무 좋아하지 않는다. 결과를 지역 변수 msg_req에 추가하는 것이 더 좋을 수도 있고, 처음의 if 변수가 비어 있지 않은지 검사한다. –