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 > ){
alert("年龄不对");
}
else if(s!='男'&&s!='女' ){
alert("性别不对");
}
else if(!ic.match(/^[-]\d{}((\d)|([-]))(([||]\d)|[-])\d{}$|^[-]\d{}[-]\d{}((\d)|([-]))(([||]\d)|[-])\d{}([-]|X)$/)){
alert("身份证不对");
}
else if(q> ){
alert("QQ号不对");
}
else if(!p.match(/^[]\d{}$/)){
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退出循环(新人请多多关照~)的更多相关文章
- 大家好,我是一个JAVA初学者,想在这里记下自己学习过程中的点点滴滴,请多多关照
大家好,我是一个JAVA初学者,想在这里记下自己学习JAVA的点点滴滴,请多多关照. 以前一直在QQ空间里记录的,但感觉有些麻烦,而且有些东西自己理解的并不完善甚至都不正确,现在开始在这里重新记录,从 ...
- 新进Linux菜鸟,请多多关照
早早知晓Linux的大名,一直未研究学习,近来看了kernel一些源代码,在网上搜过很多基础的知识.感觉这个Linux的世界很广大,值得好好深入学习.初生婴儿,呱呱落地,必先躺若干日后能坐,在学爬,进 ...
- foreach和List.Foreach 退出循环相关问题
foreach: continue;:退出本次循环 break;:退出循环 return;:退出循环 List.Foreach: return;:退出本次循环 小结:list.Foreach中不能退出 ...
- 《Python测试开发技术栈—巴哥职场进化记》—初来乍到,请多关照
上文<巴哥职场进化记-Python测试开发技术栈>开篇讲到巴哥毕业初到深圳,见到了来自五湖四海的室友.一番畅聊之后,抱着对未来职场生活的期待,大家都进入了梦乡.今天我们来看看巴哥第一天上班 ...
- Foreach能够循环的本质
我们对foreach循环并不陌生,在C#中我们用得非常多,但是我们是否清楚foreach循环的本质呢? 众所周知,foreach循环能够遍历 数组 ,集合 .但是我们自己定义的一个类是否能够通过fo ...
- jQuery中each的用法之退出循环和结束本次循环
jQuery中each的用法之退出循环和结束本次循环 jQuery中each类似于javascript的for循环 但不同于for循环的是在each里面不能使用break结束循环,也不能使用conti ...
- python全栈开发知识点补充for else和while else如果不是除正常以外的其他方式退出循环,那么else语句就会被执行。
如果不是除正常以外的其他方式退出循环,那么else语句就会被执行. 也就是循环体内没有break语句.return语句.和其他异常语句的执行. for else >>> for ...
- 端午节佳节从CSDN博客搬家来这,请多多指教
端午节佳节从CSDN博客搬家来博客园,请多多指教
- 编写高质量代码改善C#程序的157个建议——建议17:多数情况下使用foreach进行循环遍历
建议17:多数情况下使用foreach进行循环遍历 由于本建议涉及集合的遍历,所以在开始讲解本建议之前,我们不妨来设想一下如何对结合进行遍历.假设存在一个数组,其遍历模式可以采用依据索引来进行遍历的方 ...
随机推荐
- 树莓派apt-get The value '\stable' is invalid for APT 错误
对apt-get进行任何操作都会报错: pi@raspberrypi:~ $ sudo apt-get upgrade Reading package lists... Done E: The val ...
- PAT 甲级 1027 Colors in Mars (20 分)
1027 Colors in Mars (20 分) People in Mars represent the colors in their computers in a similar way a ...
- SQL 中 CASE - WHEN - THEN - ELSE - END 的小结
在SQLServer中给变量赋备件值 可以用 @var = CASE WHEN EXPRESSION THEN STATEMENT01 ELSE STATEMENT02 END 当表达式 EXPRES ...
- Webform(条件查询)
<html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> &l ...
- Asp.Net+JQuery.Ajax之$.post
段时间有点跑偏,经过米老师和师傅的耐心指导,终于认识到自己的问题,现在回归常规路线,继续B/S的学习. 经过近半个月的熏陶,对JQuery慢慢的有了亲切感.当时我采访过一清,问他看完JQuery视频有 ...
- idea导入项目
1. 2.导入项目 3.右键项目选择web 4.编辑添加tomcat 5.添加jar.包 6. 7.右键put into 8.安装tomcat 9.引入tomcat 10.把项目布署到tomcat
- Jquery DataTables 获取表格数据
1.获取表格所有数据 function getTableContent(){ var nTrs = table.fnGetNodes();//fnGetNodes获取表格所有行,nTrs[i]表示第i ...
- ios unicode
转义字符,反斜扛\ \u 后跟4位16进制数 \U 后跟8位16进制数
- Linux常用基础操作命令大全(超实用精心整理)
相信大家都对黑客那种只用命令行对电脑操作的风格惊呆了,其实你也可以做到.linux是一款不同于windows的操作系统,而且它是黑客.渗透人员.运维人员等等必会的.如果你想学习,小编下面整理的命令将会 ...
- 2D射影空间,为何引入射影空间
2D欧氏空间R2中,点的表示是A(x1,y1), B(x2,y2),二维参数,线的表示是L: y=kx+b,是二维参数: 如何表示点在线上面?可以扩展为(k,-1,b)* (x1,y1,1)t = 0 ...