天看了老东家的一个专题页面,发现里边的checkFrome.js收集了很多对文本框的判断,非常有用收藏一下。
其中包含了:
1、页面截取字符串
2、文本框最大长度限制
3、判断必须是数字和字母的组合
4、判断是否有中文
5、判断是否有sql非法字符
6、判断是否有特殊字符
7、判断是否有空格
8、字符串包含测试函数
9、通行证 验证
10、身份证 验证
11、固定号码 验证
12、网址,MSN 验证
13、年龄 验证
14、邮编 验证
15、是否汉字
16、邮箱验证
17、输入框文字上传验证 min上限 max下限(字节计算)
18、输入框文字上传验证 最多字数限制(字节计算)
19、只判断 是否数字
20、是否数字 未填写默认0
21、空值 验证
22、是否字母
23、是否含有数字
24、是否是带小数点的数字
25、检查输入的值,小数点后的位数
26、是否下划线
27、是否由字母或数字组成
28、必须是由字母、数字、下划线组成
29、是否合法年月 格式为2003-01-01
30、长度是否对
31、固定长度的数字
32、是否合法年月
33、汉字校验(正则)
34、是否整形数字
35、登录名必须是由字母、数字、下划线等组成
36、密码必须是由字母、数字、下划线组成
37、打印
38、修改后提示是否返回列表
39、检查函数:中文
40、检查函数: 中文或数字
以上将来总会遇到的,毕竟是完美程序和运营那边实践总结出来的,赞一个。

//****--2009.2.19  重新整理添加 by ddd ---***
//较常用到的方法都列到了前面 //----页面截取字符串----name为字符串-------
function maxsubstring(name, max, suffix) {
var newname;
suffix = suffix || '...';
return (name.length>max)?name.substr(0,max)+suffix : name;
}
//-----textarea maxlength限制-------
//使用说明:
//<textarea name="content" cols="40" rows="10" onpropertychange="checkMaxLen(this,10,0)" oninput="checkMaxLen(this,10,0)" onclick="gz(this); return false;" >评论描述字数不得超过10字。</textarea>
function gz(el) {
el.value = "";
el.onclick = null;
} function checkMaxLen(obj, maxlength, num, str) {
str = str || "对不起,您输入的字数已超过" + maxlength + "个字,您的文字将被截取。"
var oldValue = new Array();
if (obj.value.length > maxlength) {
alert(str);
obj.value = obj.value.substring(0, maxlength);
oldValue[num] = obj.value;
return false;
} else {
oldValue[num] = obj.value;
}
} //-------判断必须是数字和字母的组合---------
function isNumAndAlphabet(name, str) {
str = str || "只允许填写数字和字母。";
var reg = /^(([a-z]+[0-9]+)|([0-9]+[a-z]+))[a-z0-9]*$/i ;
if (!reg.test(name.value)) {
alert(str);
name.focus();
return true;
}
return false;
} //------判断是否有中文---------
function havaChinese(name, str) {
str = str || "信息中不允许有汉字。";
var reg = /[\u0391-\uFFE5]/g;
if (reg.test(name.value)) {
alert(str);
name.focus();
return true;
}
return false;
} //-------判断是否有sql非法字符--------
function isSqlCharacter(name, str) {
str = str || "您提交的信息中有非法字符。";
// var namevalue = name.value.toLowerCase() ;//把所有的字母转换成小写 ;
// alert("namevalue="+namevalue) ;
var re = /(select|insert|delete|drop|update|truncate|exec|'|"|%)/gi;
if (re.test(name.value)) {
alert(str);
name.focus();
return true;
}
return false;
} //-------判断是否有特殊字符-------
function isSpecialCharacters(name, str) {
str = str || "提交信息中不允许有特殊字符。";
var re = /(#|@|\^|%|\$|&|\*|~)/gi;
if (re.test(name.value)) {
alert(str);
name.focus();
return true;
}
return false;
} //-------判断是否有空格-------------
function notSpace(name, strs) {
strs = strs || "提交信息中不允许有空格。";
if (contain(name.value, "  ")) {
alert(strs);
name.focus();
return true;
}
return false;
}
// --------------
function contain(name, charset)
{
var i;
for (i = 0; i < charset.length; i++)
if (name.indexOf(charset.charAt(i)) >= 0)
return true;
return false;
} //-------通行证 验证-------
function notAccount(name, str) {
str = str || "请填写正确的通行证账号。";
// var reg = /^[a-zA-Z0-9]{6,16}$/;
var reg = /^[a-z]{1}[a-z0-9]{5,15}$/;
if (trim(name.value) == "" || !reg.test(name.value)) {
alert(str);
name.focus();
return true;
}
return false;
} //-------身份证 验证-------
function notIdCard(name, str) {
str = str || "请填写正确的身份证号码。";
var reg = /^(\d{15}|\d{17}[\d,x,X])$/;
if (trim(name.value) == "" || !reg.test(name.value)) {
alert(str);
name.focus();
return true;
}
return false;
} //-------固定号码 验证-------
function notFixPhone(name, str) {
str = str || "请填写正确的电话号码。";
var reg = /(\d{2,5}-\d{7,8}(-\d{1,})?)|(13\d{9})|(15\d{9})/;
if (trim(name.value) == "" || !reg.test(name.value)) {
alert(str);
name.focus();
return true;
}
return false;
} //-------网址,MSN 验证-------
function notSrc(name, str) {
str = str || "请填写正确的地址。";
var regex = /(http:\/\/)?([\w-]+\.)+[\w-]+(\/[\w- \.\/?%&=]*)?/;
var src = name.value ;
var result = regex.test(src);
if (trim(src) == "" || result == false) {
alert(str);
name.focus();
return true;
}
return false;
}
//---------年龄 验证--------------
function notAge(name, str) {
str = str || "请填写正确的年龄。";
var age = name.value ;
if (trim(age) == "" || isNaN(trim(age)) || age < 1 || age > 150) {
alert(str);
name.focus();
return true;
}
return false; } //-------邮编 验证-------
function notPost(name, str) {
str = str || "请输入正确的邮政编码。";
if (trim(name.value) == "" || trim(name.value).length != 6 || isNaN(trim(name.value))) {
alert(str);
name.focus();
return true;
}
return false;
} //-------是否汉字-------
function notChinese(name, str) {
str = str || "你输入的不全是汉字。";
var reg = /^[\u4E00-\u9FA5]*$/;
if (trim(name.value) == "" || !reg.test(name)) {
alert(str);
name.focus();
return false;
}
return true;
} //-------邮箱验证-------
function notEmail(name, strs) {
strs = strs || "请填写正确的邮件地址。";
var str,re;
re = /([\w|-]+@[\w|-]+\.[\w|-]+)(\.?[\w|-]*)(\.?[\w|-]*)/i; re.exec(trim(name.value));
if (RegExp.$3 != "" && RegExp.$3 != "." && RegExp.$2 != ".")
str = RegExp.$1 + RegExp.$2 + RegExp.$3;
else
if (RegExp.$2 != "" && RegExp.$2 != ".")
str = RegExp.$1 + RegExp.$2;
else
str = RegExp.$1;
if (trim(name.value) == "" || str != trim(name.value))
{
alert(strs);
name.focus();
return true;
}
return false;
} //-------输入框文字上传验证 min上限 max下限(字节计算)-------
function notStrArea(name, min, max, str2) {
var str = name.value;
len = 0;
for (i = 0; i < str.length; i++) {
iCode = str.charCodeAt(i);
if ((iCode >= 0 && iCode <= 255) || (iCode >= 0xff61 && iCode <= 0xff9f)) {
len += 0.5;
//english
} else {
len += 1;
}
}
if (trim(str) == "" || len < min || len > max) {
alert(str2);
name.focus();
return true;
}
return false;
} //-------输入框文字上传验证 最多字数限制(字节计算)-------
function notStrMax(name, max, str2) {
var str = name.value;
len = 0;
for (i = 0; i < str.length; i++) {
iCode = str.charCodeAt(i);
if ((iCode >= 0 && iCode <= 255) || (iCode >= 0xff61 && iCode <= 0xff9f)) {
len += 0.5;
} else {
len += 1;
}
}
if (trim(str) == "" || len > max) {
alert(str2);
name.focus();
return true;
}
return false;
} //-------只判断 是否数字 -------
function notNumber(name, str) {
if (trim(name.value) == "" || isNaN(trim(name.value))) {
alert(str);
name.focus();
return true;
}
return false;
} //-------是否数字 未填写默认0-------
function notNumber0(name, str) {
if (trim(name.value) == "") {
name.value = 0;
return false;
}
else if (isNaN(trim(name.value))) {
alert(str);
name.focus();
return true;
}
return false;
} //-------空值 验证-------
function isNull(name, str) {
if (trim(name.value) == "") {
alert(str);
name.focus();
return true;
}
return false;
} //-------是否字母------
function CheckAlphabet(Str) {
var flag = true;
var Strlength = Str.length;
for (var i = 0; i < Strlength; i++) {
if (Str.charCodeAt(i) < 65 || (90 < Str.charCodeAt(i) && Str.charCodeAt(i) < 97) || Str.charCodeAt(i) > 122) {
flag = false;
break;
}
} return flag;
}
//---------是否含有数字 ---------
function checkInputValue(inputvalue) {
var i,len,str;
str = inputvalue;
len = str.length;
str = str.toUpperCase();
for (i = 0; i < len; i++)
{
c = str.charAt(i);
if (c >= "0" && c <= "9")
{
return true;
}
}
return false;
} //---------是否是带小数点的数字---------
function notFloat(name, str) {
var s = parseFloat(trim(name.value));
if (isNaN(s)) {
alert(str);
name.focus();
return true;
}
else
return false;
} //---------检查输入的值,小数点后的位数---------
function checknumber(value, num, str) {
if (value != "") {
if (value.indexOf(".") > 0) {
var temp = value.length - (value.indexOf(".") + 1);
if (temp > num) {
alert(str + "的小数点后只能有" + num + "位!");
return true;
}
}
}
return false;
} //---------是否下划线---------
function CheckLine(Str) {
var flag = true;
var Strlength = Str.length;
for (var i = 0; i < Strlength; i++) {
if (Str.charCodeAt(i) != 95) {
flag = false;
break;
}
}
return flag;
}
//-------是否由字母或数字组成------
function notChinese(obj, alertValue) {
var objValue = obj.value;
for (var i = 0; i < objValue.length; i++) {
var temtchar = objValue.charAt(i);
var Digit = CheckDigit(temtchar);
var Alphabet = CheckAlphabet(temtchar); if (!Digit && !Alphabet) {
alert(alertValue + "必须是由字母或数字组成!");
return true;
}
} return false;
} //-------必须是由字母、数字、下划线组成!-----------
function notValid(obj)
{
var objValue = obj.value;
for (var i = 0; i < objValue.length; i++) {
var temtchar = objValue.charAt(i);
var Digit = CheckDigit(temtchar);
var Alphabet = CheckAlphabet(temtchar);
var line = CheckLine(temtchar);
if (!Digit && !Alphabet && !line) {
alert("请确认您输入的内容必须是由字母、数字、下划线组成!");
return true;
}
}
return false;
} //-------是否合法年月 格式为2003-01-01 -------
function notNYR2(name, str) {
if (trim(name.value).length == 0) {
return false;
}
if (trim(name.value).length != 10) {
alert(str + "的格式不对,格式应该如此:2003-01-01");
name.focus();
return true;
}
if (trim(name.value).substring(4, 5) != "-") {
alert(str + "的年与月份之间应该有连接号,请核对!");
name.focus();
return true;
}
if (trim(name.value).substring(5, 7) > 12) {
alert(str + "的月份不能大于12,请核对!");
name.focus();
return true;
}
if (trim(name.value).substring(7, 8) != "-") {
alert(str + "的月份与日期之间应该有连接号,请核对!");
name.focus();
return true;
}
if (trim(name.value).substring(8, 9) > 31) {
alert(str + "的日期不能大于31,请核对!");
name.focus();
return true;
}
return false;
} //----------长度是否对 by lyj ------------
function notLength(name, length, str) {
if (trim(name.value).length != length) {
alert(str);
name.focus();
return true;
}
return false;
} //-----------固定长度的数字------------
function notLandN(name, length, str) {
if (trim(name.value).length != length || isNaN(trim(name.value))) {
alert(str);
name.focus();
return true;
}
return false;
} //--------------是否合法年月 by lyj----------------
function notNY1(name, str) {
if (trim(name.value).length != 6 || isNaN(trim(name.value))) {
alert(str);
name.focus();
return true;
}
if (trim(name.value).substring(4, 6) > 12) {
alert("月份不能大于12,请核对!");
name.focus();
return true;
}
return false;
}
//-----------是否合法年月 日 by wkh--------------
function notNYR(name, str) {
if (trim(name.value) == "" || trim(name.value).length != 8 || isNaN(trim(name.value))) {
alert(str);
name.focus();
return true;
}
if (trim(name.value).substring(4, 6) > 12) {
alert("月份不能大于12,请核对!");
name.focus();
return true;
}
if (trim(name.value).substring(6, 8) > 31) {
alert("日期不能大于31,请核对!");
name.focus();
return true;
}
return false;
} //------------是否合法年月 日 by wkh----------------
function notNYR1(name, str) {
if (trim(name.value).length != 8 || isNaN(trim(name.value))) {
alert(str);
name.focus();
return true;
}
if (trim(name.value).substring(4, 6) > 12) {
alert("月份不能大于12,请核对!");
name.focus();
return true;
}
if (trim(name.value).substring(6, 8) > 31) {
alert("日期不能大于31,请核对!");
name.focus();
return true;
}
return false;
} //--------汉字校验--------
function checkIsChinese(str)
{
//如果值为空,通过校验
if (str == "")
return true;
var pattern = /^([\u4E00-\u9FA5]|[\uFE30-\uFFA0])*$/gi;
if (pattern.test(str))
{
alert("你输入的不全是汉字。");
return false;
}
else
return true;
}
//--------是否整形数字 ----------
function isIntNumber(name, str) {
if (isNaN(trim(name.value))) {
alert(str);
name.focus();
return true;
}
var s = parseInt(trim(name.value));
if (trim(name.value) != s) {
alert(str);
name.focus();
return true;
}
else
return false;
} //--------是否整形数字--------------
function notIntNumber(name, str) {
if (isNaN(trim(name.value))) {
alert(str);
name.focus();
return true;
} if (name.value.indexOf('.') >= 0) {
alert(str);
name.focus();
return true;
} var s = parseInt(trim(name.value));
if (trim(name.value) != s) {
alert(str);
name.focus();
return true;
}
else
return false;
} function trim(str)
{
var len;
var i,j;
len = str.length;
i = 0;
j = 0;
while (j < len)
{
if (str.charAt(i) == " ")
i++;
else
break;
j++;
}
str = str.substr(i, len - i);
len = str.length;
i = len - 1;
j = len - 1;
while (j > 0)
{
if (str.charAt(i) == " ")
i--;
else
break;
j--;
}
str = str.substr(0, j + 1);
return str;
} function isStringEmputy(str)
{
var s;
s = trim(str);
alert("s=" + s);
str = s;
alert("str=" + str);
if (s.length < 1)
return true; return false;
} function replace(str1, c1, c2)
{
var len,i,c,str;
str = "";
len = str1.length;
for (i = 0; i < len; i++)
{
c = str1.charAt(i);
if (c == c1)
c = c2;
str += c;
}
return str;
} function toSafe(str)
{
var re;
re = /'/g;
str = str.replace(re, "'");
re = /\)/g;
str = str.replace(re, ")");
re = /\(/g;
str = str.replace(re, "(");
re = /%/g;
str = str.replace(re, "%");
re = /\[/;
str = str.replace(re, "[");
re = /\]/;
str = str.replace(re, "]");
return str;
} function makeToSafe(formName)
{
var i,form;
form = eval(formName);
for (i = 0; i < form.elements.length; i++)
{
if (form.elements[i].type == "text" || form.elements[i].type == "textarea")
{
form.elements[i].value = toSafe(form.elements[i].value);
}
}
} //-------登录名必须是由字母、数字、下划线等组成!-----------
function notValidName(obj)
{
var objValue = obj.value;
for (var i = 0; i < objValue.length; i++) {
var temtchar = objValue.charAt(i);
// alert(temtchar+":"+temtchar.charCodeAt(0));
var Digit = CheckDigit(temtchar);
var Alphabet = CheckAlphabet(temtchar);
var line = CheckLine(temtchar);
if (!Digit && !Alphabet && !line) {
alert("登录名必须是由字母、数字、下划线等组成!");
return true;
}
}
return false;
} //------密码必须是由字母、数字、下划线组成!------------
function notValidPassWord(obj)
{
var objValue = obj.value;
for (var i = 0; i < objValue.length; i++) {
var temtchar = objValue.charAt(i);
// alert(temtchar+":"+temtchar.charCodeAt(0));
var Digit = CheckDigit(temtchar);
var Alphabet = CheckAlphabet(temtchar);
var line = CheckLine(temtchar);
if (!Digit && !Alphabet && !line) {
alert("密码必须是由字母、数字、下划线组成!");
return true;
}
}
return false;
} function CheckDigit(DigitStr) {
var flag = true;
var Digitlength = DigitStr.length;
for (var i = 0; i < Digitlength; i++) {
if (DigitStr.charCodeAt(i) < 48 || DigitStr.charCodeAt(i) > 57) {
flag = false;
break;
}
} return flag;
} function convertToHtml(str)
{
var re;
re = / /g;
str = str.replace(re, "&nbsp;");
re = /\r\n/g;
str = str.replace(re, "<br>");
return str;
} function makeToHtml(formName)
{
var form;
form = eval(formName);
for (i = 0; i < form.elements.length; i++)
if (form.elements[i].type == "textarea")
form.elements[i].value = convertToHtml(form.elements[i].value);
} //------打印-------
function printinfo() { form1.target = "_blank";
var action = form1.action;
if (form1.printflag = "undefine") {
test = action;
if (test.indexOf("BeanAddServlet") > 0) {
alert("请保存信息后再使用打印功能");
form1.target = "_self";
return;
}
var a = test.indexOf("Update");
if (a > 0) test = test.substring(0, a) + "DisplayServlet" + test.substring(a + 13);
//alert(test);
if (test.indexOf("?") > 0)
form1.action = test + "&printflag=1";
else
form1.action = test + "?printflag=1";
} else {
form1.all.printflag.value = "1";
}
form1.submit();
form1.action = action;
form1.target = "_self";
} //---------修改后提示是否返回列表 ------------
function confirmPage(strurl) {
if (confirm("保存成功!选择'确定'可返回列表;")) {
window.open(strurl, '_self');
}
} function isCharsInBag(s, bag)
{
var i,c;
for (i = 0; i < s.length; i++)
{
c = s.charAt(i);
//字符串s中的字符
if (bag.indexOf(c) > -1)
return c;
}
return "";
}
//-------检查函数:中文---------------
function ischinese(name)
{ var errorChar;
var badChar = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789><,[]{}?/+=|\'\":;~!#$%()`";
errorChar = isCharsInBag(name.value, badChar)
if (errorChar != "")
{
alert("请重新输入中文\n");
name.focus();
return true;
} return false;
}
//----------检查函数: 中文或数字-------------
function ischineseordata(name)
{ var errorChar;
var badChar = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz><,[]{}?/+=|\'\":;~!#$%()`";
errorChar = isCharsInBag(name.value, badChar)
if (errorChar != "")
{
alert("请重新输入中文或数字\n");
name.focus();
return true;
} return false;
} //=============================================================================================================================== function notNumber1(name, str) {//是否数字 by lyj
if (trim(name.value) != "") {
if (isNaN(trim(name.value))) {
alert(str);
name.focus();
return true;
}
}
return false;
} function notNY(name, str) {//是否合法年月 by lyj
if (trim(name.value) == "" || trim(name.value).length != 6 || isNaN(trim(name.value))) {
alert(str);
name.focus();
return true;
}
if (trim(name.value).substring(4, 6) > 12) {
alert("月份不能大于12,请核对!");
name.focus();
return true;
}
return false;
}

JS:checkFrom对输入框和文本框的判断总结的更多相关文章

  1. Js控制显示、隐藏文本框中的密码

    Js控制显示.隐藏文本框中的密码,也可称为是一款小型的JavaScript星号密码破解器,点击会显示出密码类型的文本框中的真实信息,再次点击则还原,程序 主要是获取HTML元素对象,然后强制更改元素属 ...

  2. tkinter基础-输入框、文本框

    本节内容 了解输入框.文本框的使用方法 利用1制作简易界面 首先明确上面由几个元素组成:该界面由界面标题,输入框.两个按钮.文本框组成. 该界面我们需要实现的功能: 在输入框中输入文字,点击inser ...

  3. JS控制输入框和文本框字数

    文本框限制字数: HTML结构: JS: $('.advert-title').each(function(){ var TXTlength = $(this).text().length; // 当 ...

  4. html5与js关于input[type='text']文本框value改变触发事件一些属性的区别oninput,onpropertychange,onchange和文本框的value点击全选状态onclick="select();"。做购物车页面时会要用到。

    关于input[type='text']文本框value改变触发事件一些属性的区别oninput,onpropertychange,onchange和文本框的点击全选状态onclick="s ...

  5. Selenium Webdriver——JS处理rich text(富文本框)

    126邮件正文邮件的rich text 先让selenium切换到iframe中 driver.switchTo().frame(driver.findElement(By.className(&qu ...

  6. jQuery判断 form表单提交时一些文本框的判断

    一: form表单提交时如果表单里有input标签为空那么不提交form表单. <head> <script type="text/javascript"> ...

  7. js获取div中的文本框数据

    通过div得到div里的所有数据 大神的世界无需解释,当然不是说我,当我看到这些代码的时候我惊呆了! 这是一个工具方法js: js: /* * 获取指定对象下的所有input.textarea值 * ...

  8. js选中checkbox赋值给文本框

    //js $(function(){ var name=""; var kmname=[]; var n= $("input[type=checkbox]"). ...

  9. JS验证表单中TEXT文本框中是否含有非法字符

    <form id="form" action="" method="post"> <input type="hi ...

随机推荐

  1. mount part中位置的作用

    比如部件A上有个mount part,通过它与部件B装配.mount part与B是通过fixed joint 链接的,所以这个coordinate reference位置就决定了fixed join ...

  2. POJ2828 Buy Tickets

    题意:依次给出n个插队的情况——k,name.即标号为name的这个人插到k后,且这个过程有时间顺序. 思路:很容易想到从后往前插,也很容易想到用线段树维护个数,但是某些细节wa了很多次,代码和网上的 ...

  3. 首发 手把手教你制作 Windows8 应用程序内部的 hubtile (动态瓷砖控件) MetroStyle(转)

    http://blog.csdn.net/wangrenzhu2011/article/details/8175492 (转) 在metro 风格中 动态磁贴是他的精髓 在wp7 的开发中 我们可以使 ...

  4. python 根据对象和方法名,返回提供这个方法的定义的类

    def find_defining_class(obj, method_name): for ty in type(obj).mro(): if method_name in ty.__dict__: ...

  5. UIView 周围出现黑线的解决方法

    myView.clipsToBounds = YES;

  6. TYVJ P1063 数字串 Label:双指针 线性扫描

    描述 给你一个长度为n的数字串,数字串里会包含1-m这些数字.如果连续的一段数字子串包含了1-m这些数字,则称这个数字字串为NUM串.你的任务是求出长度最短的NUM串是什么,只需要输出这个长度即可.1 ...

  7. TYVJ P1082 找朋友 Label:字符串

    描述 童年的我们,对各种事物充满了好奇与向往.这天,小朋友们对数字产生了兴趣,并且想和数字交朋友.可是,怎么分配这些数字才能使得每个小朋友都唯一地找到一个数字朋友呢?C小朋友说:咱们按自己名字的字典序 ...

  8. COJ976 WZJ的数据结构(负二十四)

    试题描述 输入一个字符串S,回答Q次问题,给你l,r,输出从Sl--Sr组成的串在S中出现了多少次. 输入 第一行为一个字符串S.第二行为一个正整数Q.接下来Q行每行为l,r. 输出 对于每个询问,输 ...

  9. 【新产品发布】【iCore2 ARM / FPGA 双核心板】

    iCore2是一款包含ARM / FPGA两大利器的双核心板.ARM方面,采用意法半导体高性能的32位Cortex-M3内核STM32F103VE微处理器,主频达72MHz,并包含丰富外设接口.FPG ...

  10. Js组件的一些写法【转】

    首先看下Prototype里的写法: var Class = { create: function() { return function() { this.init.apply(this, argu ...