【原创】和onblur有关的 check第十列输入值是否超过第二列

问题背景:从数据库循环读取数据写在表格中,第十行填写金额,onblur时判断是否高出同行第二列,高出则报错,反之不报错。修改错误数据,信息会被擦除。

遇到的问题:第一行报错情况下,第二行填写正确信息也会擦除错误提示。

目的:只要存在错误就显示错误信息,修改错误(没有完全修改完)保留错误,完全修改完毕才能擦除错误

html代码

为了良好的抓取输入框值,使用动态添加id形式,在PHP中{$key}从0开始递增。this.id返回该输入框ID。

 id="apply_{$key}" onblur="num_check(this.id)" 

js代码

将错误ID存入数组,修改正确则删除数组对应元素。存在错误ID,则保留错误信息。错误数组没有信息时,才允许擦除信息。

 1 var err_arr = new Array();
 2     function arr_check(id){
 3         for(var i=0;i<err_arr.length;i++){
 4             if(id==err_arr[i]){
 5                 return true;
 6             }
 7         }
 8         return false;
 9     }
10
11     var numFlag = true;
12     function num_check(id) {
13
14         var money = $(‘#‘+id).val();
15         var numMsg = $("#numMsg");
16         var publish_amount =$(‘#‘+id).parent().parent().children(‘td:nth-child(2)‘).find(‘span‘).text();
17         publish_amount =  commafyback(publish_amount); //去除千分位
18         if (money == ‘‘) {
19             $(id).val(‘0‘);
20         } else if (money > publish_amount) {
21
22             if(!arr_check(id)){
23                 err_arr[err_arr.length]=id;
24                 numMsg.text(‘数额不能超过发行金额‘);
25             }
26             numFlag = false;
27         } else {
28
29             if(arr_check(id)){
30                 err_arr.splice($.inArray(id,err_arr),1);
31                 if(err_arr.length<1){
32                     numMsg.text(‘‘);
33                     numFlag = true;
34                 }
35             }
36
37         }
38     }


搞了半个小时,终于弄通了。jQuery不太会,一点一点查,惊喜还不少。

又一个原创文章,给自己赞一个~

这一定还不是最优方法,如果阅读这篇文章有兴趣的朋友可以和我讨论一下~还请赐教嘿嘿

(づ ̄3 ̄)づ╭?~

时间: 2024-08-25 22:55:16

【原创】和onblur有关的 check第十列输入值是否超过第二列的相关文章

十天冲刺计划(第二次)

5月11号: 昨天  团队开spring3会议,分配任务 今天  开始研究对于自己所领取的任务,界面整改与界面设计所需要学习的内容 困难  美术基础薄弱,颜色配比比较困难 5月12号:  昨天  研究对于自己所领取的任务,界面整改与界面设计所需要学习的内容     今天  从网上查找关于界面设计的范例,进行突击学习   困难  看代码.看界面.记录颜色搭配的最好比例  5月13号:     昨天  从网上查找关于界面设计的范例,进行突击学习 今天  继续学习,多看例子,多学习才能更好为软件服务

Welcome to Swift (苹果官方Swift文档初译与注解十二)---77~83页(第二章)

Optionals (可选类型) 当一个值可能有值,也可能没有值,这种情况你可以使用可选类型.可选类型的意思是: 有个一个值,它等于x,或者,根本没有任何值. 注意点: 可选类型的概念在C和OC中都是没有的.在OC中最相似的情况是,一个方法返回nil或者返回一个对象.OC中返回nil意思是没有合法的对象.然而,这只能针对对象,不能用在结构体,基本 数据类型,或者枚举值.对于这些类型,OC的方法只能返回固定的某个值(比如NSNotFound)来提示没有某个值.这要去方法的调用者清楚的记得返回的固定

谷歌上市十周年 成长为全球第二大技术公司

8月20日消息,据国外媒体报道,自从2004年8月19日上市以来,谷歌仅用了10年的时间就成长为市值仅次于苹果的全球第二大技术公司. 谷歌10年前上市时的发行价只有85美元,现在它的总市值已经超过了3900亿美元.目前谷歌的市值已经超过了微软.Facebook.IBM.甲骨文和英特尔,几乎是摩根大通市值的两倍,仅比埃克森美孚的市值低一点点. 在谷歌IPO的时候购入了该股票的投资者获得了丰厚的回报,如果当时购买谷歌股票并一直持有到今天,复权后的回报率超过了1200%.自然,谷歌股票的翻倍上涨也给谷

Welcome to Swift (苹果官方Swift文档初译与注解十八)---116~122页(第二章)

Strings and Characters (字符串和字符) 字符串是一组字符组成的序列,例如“hello, world" 或 "albatross”.在Swift中,字符串使用String类型进行声明,它代表一组由Character(字符)类型组成的值的序列. String类型和Character类型提供了一种在代码中处理 (兼容Unicode) 文本的快速方式.字符串创建和管理的语法与C语言的相似,都属于轻量级并且可读性好.字符串的拼接只是简单的 使用加号(+)操作符,而且字符串

Welcome to Swift (苹果官方Swift文档初译与注解十九)---123~132页(第二章..本章节还剩6页)

Working with Characters (与字符相关) 在Swift中,String类型表示一组有序字符的值.每个字符都是一个Unicode符号.可以使用for-in循环来遍历字符串中的每个字符: for character in "Dog!??" {   println(character) } // D // o // g // ! // ?? 在Swift中也可以使用Character类型来显式的创建一个单字符的常量或者变量: let yenSign: Character

Welcome to Swift (苹果官方Swift文档初译与注解十四)---90~93页(第二章)

Debugging with Assertions (断言调试) 断言是一个假设逻辑条件为真的运行时检查机制.在执行任意代码之前,可以使用断言来确认一个基本的条件情况.如果条件判断为真,代码将继续执行,如果条件为假,代码将会结束,应 用程序也会退出. 如果在调试环境中,运行的代码触发了一个断言(比如你在Xcode中编译并运行一个应用),你可以明确的看到错误的状态发生在哪里,并且查询应用程序在这个时刻的状态.断言也可以让 你使用适合的调测显示信息作为断言信息. 可以写一个全局函数assert来触发

IT十八掌作业_java基础第二天_进制转换原理和补码存储方式

1.负数的表现形式,为什么如此设计? 答: 负数以原码的补码形式表达. 正负数相加得0,溢出最高位,正好等于0. 2.-128是在内存中是如何存储的?推算过程 答: -128二进制的结果是10000000(按照8位算),与原码一样. 3.如果字节表示为11111111,则其真实数据是多少? 答: 11111111的原码是0000 0001,所以11111111的真是数据是-1. 4.正负数是否都支持补码的方式? 答: 都支持 5.正数是否是负数的减一取反? 答: 是.

十五天精通WCF——第二天 告别烦恼的config配置

经常搞wcf的基友们肯定会知道,当你的应用程序有很多的“服务引用”的时候,是不是有一种疯狂的感觉...从一个环境迁移到另外一个环境,你需要改变的 endpoint会超级tmd的多,简直就是搞死了人...好了,这篇我们来看看如何最小化配置. 一:精简service的config配置 就像上一篇的代码一样,我的service端的config配置如下: 1 <?xml version="1.0" encoding="utf-8" ?> 2 <config

十天学习PHP之第二天

学习目的:学会构建数据库 在ASP中,假设是ACCESS数据库你能够直接打开ACCESS来编辑MDB文件,假设是SQL SERVER你能够打开企业管理器来编辑SQL SERVER数据库.可是在PHP中.MY SQL的命令行编辑可能会令刚開始学习的人感到非常麻烦,不要紧.你下载一个PHPMYADMIN安装一下,以后建立编辑数据库能够靠它了. 以下说一下它的使用. 进入了phpmyadmin后.我们首先须要建立一个数据库, Language (*) 这里选择简体中文,然后在左边的 创建一个新的数据库