foreach退出循环(新人请多多关照~)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了foreach退出循环(新人请多多关照~)相关的知识,希望对你有一定的参考价值。

今天做一个关于人员信息修改的页面时,我用foreach获取数据库数据时发现,用if else判断输入的内容时,会一个一个的做对比,导致错误提醒时会弹出与数据库内容行数相同条的提醒,最后发现将数据直接命为全局变量便轻松的解决了这个问题.

var totaldata;
    
$(function(){
    $("#cha").click(function() {
        validateForm();
    });
});
/**
 * 修改内容判断
 */
function validateForm(){
    var i=$(#idd).val();
    var isexist=false;
    totaldata.cont.forEach(function(val,index){
        if(i==val.id){
            isexist=true;
        }
    });

首先获取到input写入的内容,用来和数据库数据作对比,如果相同,再进行下一步操作.声明一个用来判断数据是否相同的变量isexist,赋值为false,如果数据相同,将false变为true.

if    (isexist){
        var n=$(#name).val();
        var a=$(#age).val();
        var s=$(#sex).val();
        var ic=$(#idCard).val();
        var q=$(#QQ).val();
        var p=$(#phone).val();
        var ps=$(#post).val();
        var ind=$(#inductionTime).val();
        var e=$(#education).val();
        if(!(i&&n&&a&&s&&ic&&q&&p&&ps&&ind&&e)){
            alert(不能为空!);
        }
        else if(a > 100 ){
            alert("年龄不对");
        }
        else if(s!=&&s!= ){
            alert("性别不对");
        }
        else if(!ic.match(/^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$|^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X)$/)){
            alert("身份证不对");
        }
        else if(q> 9999999999 ){
            alert("QQ号不对");
        }
        else if(!p.match(/^1[34578]\d{9}$/)){
            alert("电话号码不对");
        }
        else{
            alert(修改成功!);
            h(i,n,a,s,ic,q,p,ps,ind,e);
        }
    }
    else{
        alert(编号不存在!);
    }
}

如果isexist值为true,那么进行下一步获取页面上所有input的value值,如果有一个为空,那么就会提示错误信息,下面的if else都是错误判断的.

    kk();
function kk(){
    $.ajax({
        url:http://192.168.0.172/show,
        dataType:jsonp,
        success:function(data){
            totaldata=data;
        },
        error:function(err){
            console.log(err);
        }
    })
}

这是从数据库获取到的内容,我将获取到的内容设为了全局变量(图一),这样便能直接在外面使用数据库数据.

/**
     * 修改后的数据传到后台
     */
    function h(id,name,age,sex,idCard,QQ,phone,post,inductionTime,education){
        $.ajax({
            url:http://192.168.0.172/modify,
            data:{id:id,name:name,age:age,sex:sex,idCard:idCard,QQ:QQ,phone:phone,post:post,inductionTime:inductionTime,education:education},
            dataType:jsonp,
            success:function(data){
                console.log(data);
            },
            error:function(err){
                console.log(err);
            }
        })
    }

最后将判断完成的数据传输到数据库,完成修改!

(如果大佬有其他更好的方法欢迎与我多多交流= =,感激不尽!)

以上是关于foreach退出循环(新人请多多关照~)的主要内容,如果未能解决你的问题,请参考以下文章

新人请多关照

开通博客了,请多多关照

Python,你好,请多多关照!

新人报道(小程序文本换行自动算法)

新人报到

在承诺完成之前退出 forEach