Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用javascript一次性显示此数组的字符串内容?_Javascript_Arrays_Validation - Fatal编程技术网

如何使用javascript一次性显示此数组的字符串内容?

如何使用javascript一次性显示此数组的字符串内容?,javascript,arrays,validation,Javascript,Arrays,Validation,我使用它进行表单验证。当出现错误时,我调用此函数,并将字符串作为参数发送给它 var errList = new Array(); function aerrorList(error){ errList.push(error); for (var i=0; i < errList.length; i++){ alert(errList[i]); } } var errList=new Array();

我使用它进行表单验证。当出现错误时,我调用此函数,并将字符串作为参数发送给它

var errList = new Array();
    function aerrorList(error){
        errList.push(error);
        for (var i=0; i < errList.length; i++){
            alert(errList[i]);
        }
    }
var errList=new Array();
函数错误列表(错误){
errList.push(错误);
对于(变量i=0;i
以下是验证检查之一:

function lNameValidate() {
        var lName = document.getElementById("lastname");
        if (lName.value.length < 20 && /^[a-zA-Z0-9- ]*$/.test(lName.value)){
            stNumValidate();
        } else {
            lName.style.border = "red";
            errorList("Invalid lName Format");
            stNumValidate();
        }
    }
函数lNameValidate(){
var lName=document.getElementById(“lastname”);
如果(lName.value.length<20&&/^[a-zA-Z0-9-]*$/.测试(lName.value)){
stNumValidate();
}否则{
lName.style.border=“红色”;
错误列表(“无效的lName格式”);
stNumValidate();
}
}

当前数组(使用警报)在多个弹出框中显示错误,每个框只有一个错误字符串。我希望它显示1个警报,该警报将显示列表中的所有错误,类似于以要点方式输出。

您可以将所有错误附加到一个
var
中,然后显示:

函数错误列表(错误){
errList.push(错误);
var误差=”;
对于(变量i=0;i}

您可以将所有错误附加到一个
var
中,然后显示它:

函数错误列表(错误){
errList.push(错误);
var误差=”;
对于(变量i=0;i

试试这个:

var错误={
信息:[],
推送:功能(信息){
this.messages.push(message);
},
警报:函数(){
警报(this.messages.join(“\n”);
},
showInElement:功能(元素){
element.innerHTML=this.messages.join(“
”); }, 清除:函数(){ this.messages=[]; } } 变量年龄=1; if(年龄<18岁){ 错误。按(“当你18+时回来”); } var name=“杰克”; 如果(姓名!=“约翰”){ 错误。推(“你不是约翰!”); } Errors.alert(); var元素=document.getElementById('content'); 错误。显示元素(元素); 错误。清除()
试试这个:

var错误={
信息:[],
推送:功能(信息){
this.messages.push(message);
},
警报:函数(){
警报(this.messages.join(“\n”);
},
showInElement:功能(元素){
element.innerHTML=this.messages.join(“
”); }, 清除:函数(){ this.messages=[]; } } 变量年龄=1; if(年龄<18岁){ 错误。按(“当你18+时回来”); } var name=“杰克”; 如果(姓名!=“约翰”){ 错误。推(“你不是约翰!”); } Errors.alert(); var元素=document.getElementById('content'); 错误。显示元素(元素); 错误。清除()
您可以在数组上使用
join
方法,下面是一个示例:

errors=['error1'、'error2'、'error3']

这里是一个错误列表的数组,现在您可以使用以下任意方式将它们粘合在一起:

error\u string=error.join(“\n*”)

最后,您可以发出警报:


alert(error\u string)

您可以对数组使用
join
方法,下面是一个示例:

errors=['error1'、'error2'、'error3']

这里是一个错误列表的数组,现在您可以使用以下任意方式将它们粘合在一起:

error\u string=error.join(“\n*”)

最后,您可以发出警报:


alert(error\u string)

因此我最终使用了以下方法:

    var errList = new Array();
    function errorList(error){
        errList.push(error);
    }

    function showErrors() {
        alert(errList.join("\n"));
    }
其中,如果errList长度大于1,则在最后一次验证检查时,我只调用了淋浴ROR:

function emailRestrict() {
        var eVal = document.getElementById("email").value;
        var atPos = eVal.indexOf("@");
        var dotPos = eVal.lastIndexOf(".");
        if (atPos < 1 || dotPos < atPos || dotPos >= eVal.length) {
            errorList("not valid email");
            if (errList.length > 1){
                showErrors();
            }
        return false;
        }
        else {
            if (errList.length > 1){
                showErrors();
            }
            return true;
        }
    }
函数emailRestrict(){
var eVal=document.getElementById(“电子邮件”).value;
var atPos=评估指数(“@”);
var dotPos=评估最后指数(“.”);
if(atPos<1 | | dotPos=评估长度){
错误列表(“无效电子邮件”);
如果(errList.length>1){
淋浴器();
}
返回false;
}
否则{
如果(errList.length>1){
淋浴器();
}
返回true;
}
}

所以我最终使用了这个:

    var errList = new Array();
    function errorList(error){
        errList.push(error);
    }

    function showErrors() {
        alert(errList.join("\n"));
    }
其中,如果errList长度大于1,则在最后一次验证检查时,我只调用了淋浴ROR:

function emailRestrict() {
        var eVal = document.getElementById("email").value;
        var atPos = eVal.indexOf("@");
        var dotPos = eVal.lastIndexOf(".");
        if (atPos < 1 || dotPos < atPos || dotPos >= eVal.length) {
            errorList("not valid email");
            if (errList.length > 1){
                showErrors();
            }
        return false;
        }
        else {
            if (errList.length > 1){
                showErrors();
            }
            return true;
        }
    }
函数emailRestrict(){
var eVal=document.getElementById(“电子邮件”).value;
var atPos=评估指数(“@”);
var dotPos=评估最后指数(“.”);
if(atPos<1 | | dotPos=评估长度){
错误列表(“无效电子邮件”);
如果(errList.length>1){
淋浴器();
}
返回false;
}
否则{
如果(errList.length>1){
淋浴器();
}
返回true;
}
}

是的,有可能您能告诉我怎么做吗?您是否尝试过将警报从循环中释放出来,并将从循环中获得的值存储在类似于此的临时容器中?var temp=“”;对于(var i=0;i警报(errList.join('\n'))
。I w