在开发web项目的时候,难免遇到各种对网页数据的处理,比如对用户在表单中输入的电话号码、邮箱、金额、身份证号、密码长度和复杂程度等等的验证,以及对后台返回数据的格式化比如金额,返回的值为null,还有对指定日期之前或之后某一天或某一月的计算。

遇到需要对数据及表单验证的,我相信大家都像我一样,喜欢在网上找相关的方法,因为自己写的话,是比较耗时的。今天就给大家分享一下,自己在工作中总结的一些常用
的js。

 /**
* 验证密码复杂度(必须包含数字字母)
* @param str
* @returns true:满足规则,false:不满足
*/
function validateStr(str){
var reg1 = /^(([0-9]{1,})([a-z]{1,}))|(([a-z]{1,})([0-9]{1,}))$/;
var reg2 = /^(([0-9]{1,})([A-Z]{1,}))|(([A-Z]{1,})([0-9]{1,}))$/;
//var reg3 = /^([a-zA-Z]{0,})[0-9a-z-A-z]{0,}[~`!@#$%^&*.]{0,}$/;
str = valueTrim(str);
//if(reg3.test(str)){
// return true;
//}
if(reg1.test(str)){
return true;
}
if(reg2.test(str)){
return true;
}
return false;
}
/**
* 判断字符串长度 必须大于8位小于20位,一般用于密码
* @param str 字符串
* @returns 满足返回true
*/
function valiDateLength(str){
if(str==null || str==''){
return false;
}
str = valueTrim(str);
if(parseFloat(str.length)<8 ){
return false;
}
if(parseFloat(str.length)>20){
return false;
}
return true;
}
/**
* 验证时间
* @param dataValue 格式为:YYYY-MM-DD
* @returns 匹配返回true 不匹配返回false
*/
function valiDate(dateValue){
var result = dateValue.match(/((^((1[8-9]\d{2})|([2-9]\d{3}))(-)(10|12|0?[13578])(-)(3[01]|[12][0-9]|0?[1-9])$)|(^((1[8-9]\d{2})|([2-9]\d{3}))(-)(11|0?[469])(-)(30|[12][0-9]|0?[1-9])$)|(^((1[8-9]\d{2})|([2-9]\d{3}))(-)(0?2)(-)(2[0-8]|1[0-9]|0?[1-9])$)|(^([2468][048]00)(-)(0?2)(-)(29)$)|(^([3579][26]00)(-)(0?2)(-)(29)$)|(^([1][89][0][48])(-)(0?2)(-)(29)$)|(^([2-9][0-9][0][48])(-)(0?2)(-)(29)$)|(^([1][89][2468][048])(-)(0?2)(-)(29)$)|(^([2-9][0-9][2468][048])(-)(0?2)(-)(29)$)|(^([1][89][13579][26])(-)(0?2)(-)(29)$)|(^([2-9][0-9][13579][26])(-)(0?2)(-)(29)$))/);
if(result==null){
return false;
}
return true;
}
/**
* 验证电话号码
* @param phoneValue 要验证的电话号码
* @returns 匹配返回true 不匹配返回false
*/
function validatePhone(phoneValue) {
phoneValue = valueTrim(phoneValue);
var reg = /^[1][0-9]{10}$/;
return reg.test(phoneValue);
}
/**
* 验证邮箱
* @param emailValue 要验证的邮箱
* @returns 匹配返回true 不匹配返回false
*/
function validateEmail(emailValue){
var reg = /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/;
return reg.test(emailValue);
}
/**
* 判断是否是数字
* @param numberValue 要验证的数据
* @returns 匹配返回true 不匹配返回false
*/
function isNumber(numberValue){
//定义正则表达式部分
var reg1 = /^[0-9]{0,}$/;
var reg2 = /^[1-9]{1}[0-9]{0,}$/;
//alert(numberValue);
if(numberValue ==null || numberValue.length==0){
return false;
}
numberValue = valueTrim(numberValue);
//判断当数字只有1位时
if(numberValue.length<2){
return reg1.test(numberValue);
}
return reg2.test(numberValue);;
}
/***
* 金额
* @param value
* @returns
*/
function isMoney(value) {
if(value==''){
return false;
}
value = valueTrim(value);
value = value.replace(/(^\s*)|(\s*$)/g, "");
var reg = /^[0-9]*\.?[0-9]{0,2}$/;
if(isNumber(value)){
return true;
}
if(value.length>3){
if(value.substr(0, 1)=="0"){
if(value.substr(3,value.length).length>2){
return false;
}
}
}
return reg.test(value);
}
/***
* 判断是否是0到100之间的数
* @param value
* @returns
*/
function isZeroToOne(value) {
if(value==''){
return false;
}
value = valueTrim(value);
if(isMyFloat(value)){
if(parseFloat(value)<100 && parseFloat(value)>0){
return true;
}
}
return false;
}
/**
* 验证是否是浮点数
* @param floatValue 要验证的数据
* @returns 匹配返回true 不匹配返回false
*/
function isMyFloat(floatValue){
if(floatValue==''){
return false;
}
floatValue = valueTrim(floatValue);
var reg = /^(\d+)(\.\d+)$/;
if(isNumber(floatValue)){
return true;
}
if(floatValue.length>3){
if(floatValue.substr(0, 1)=="0"){
if(floatValue.substr(0, 2)!="0."){
return false;
}
}
}
return reg.test(floatValue);
}
/**
* 判断是否是汉字
* @param charValue 要验证的数据
* @returns 匹配返回true 不匹配返回false
*/
function isCharacter(charValue){
var reg = /^[\u4e00-\u9fa5]{0,}$/;
return reg.test(charValue);
}
/**
* 验证座机号
* @param telValue 要验证的座机号
* @returns 匹配返回true 不匹配返回false
*/
function valiDateTel(telValue){
var reg = /^(\(\d{3,4}\)|\d{3,4}-)?\d{7,8}$/;
telValue = valueTrim(telValue);
if(!reg.test(telValue)){
return false;
}
return true;
}
var Wi = [ 7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2, 1 ]; // 加权因子
var ValideCode = [ 1, 0, 10, 9, 8, 7, 6, 5, 4, 3, 2 ]; // 身份证验证位值.10代表X
/**
* 验证身份证
* @param idCard 需要验证的身份证号
* @returns 匹配返回true 不匹配返回false
*/
function IdCardValidate(idCardValue) {
//去掉字符串头尾空格
idCardValue = valueTrim(idCardValue.replace(/ /g, ""));
if (idCardValue.length == 15) {
//进行15位身份证的验证
return isValidityBrithBy15IdCard(idCardValue);
} else if (idCardValue.length == 18) {
// 得到身份证数组
var a_idCard = idCardValue.split("");
//进行18位身份证的基本验证和第18位的验证
if(isValidityBrithBy18IdCard(idCardValue)&&isTrueValidateCodeBy18IdCard(a_idCard)){
return true;
}else {
return false;
}
} else {
return false;
}
}
/**
* 判断身份证号码为18位时最后的验证位是否正确
* @param a_idCard 身份证号码数组
* @return
*/
function isTrueValidateCodeBy18IdCard(a_idCard) {
var sum = 0; // 声明加权求和变量
if (a_idCard[17].toLowerCase() == 'x') {
a_idCard[17] = 10;// 将最后位为x的验证码替换为10方便后续操作
}
for ( var i = 0; i < 17; i++) {
sum += Wi[i] * a_idCard[i];// 加权求和
}
valCodePosition = sum % 11; // 得到验证码所位置
if (a_idCard[17] == ValideCode[valCodePosition]) {
return true;
} else {
return false;
}
}
/**
* 验证18位数身份证号码中的生日是否是有效生日
* @param idCard 18位书身份证字符串
* @return
*/
function isValidityBrithBy18IdCard(idCard18){
var year = idCard18.substring(6,10);
var month = idCard18.substring(10,12);
var day = idCard18.substring(12,14);
var temp_date = new Date(year,parseFloat(month)-1,parseFloat(day));
// 这里用getFullYear()获取年份,避免千年虫问题
if(temp_date.getFullYear()!=parseFloat(year)
||temp_date.getMonth()!=parseFloat(month)-1
||temp_date.getDate()!=parseFloat(day)){
return false;
}else{
return true;
}
}
/**
* 验证15位数身份证号码中的生日是否是有效生日
* @param idCard15 15位书身份证字符串
* @return
*/
function isValidityBrithBy15IdCard(idCard15){
var year = idCard15.substring(6,8);
var month = idCard15.substring(8,10);
var day = idCard15.substring(10,12);
var temp_date = new Date(year,parseFloat(month)-1,parseFloat(day));
// 对于老身份证中的你年龄则不需考虑千年虫问题而使用getYear()方法
if(temp_date.getYear()!=parseFloat(year)
||temp_date.getMonth()!=parseFloat(month)-1
||temp_date.getDate()!=parseFloat(day)){
return false;
}else{
return true;
}
}
//去掉字符串头尾空格
function valueTrim(str) {
return str.replace(/(^\s*)|(\s*$)/g, "");
}
/**
* 检验18位身份证号码(15位号码可以只检测生日是否正确即可,自行解决)
* @param idCardValue 18位身份证号
* @returns 匹配返回true 不匹配返回false
*/
function idCardVildate(cid){
var arrExp = [7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2];//加权因子
var arrValid = [1, 0, "X", 9, 8, 7, 6, 5, 4, 3, 2];//校验码
var reg = /^[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)$/;
if(reg.test(cid)){
var sum = 0, idx;
for(var i = 0; i < cid.length - 1; i++){
// 对前17位数字与权值乘积求和
sum += parseInt(cid.substr(i, 1), 10) * arrExp[i];
}
// 计算模(固定算法)
idx = sum % 11;
// 检验第18为是否与校验码相等
return arrValid[idx] == cid.substr(17, 1).toUpperCase();
}else{
return false;
}
}
/**
* 获取指定日期之前或之后的第几天
*
* @param dayCount
* 正数为以后时间,负数为以前时间 如:1表示为明天,-1为昨天
*
*/
function getDateStr(dates, dayCount) {
var dateTime = dayCount * 24 * 60 * 60 * 1000;
var dd = new Date();
if (dates == "") {
dd = new Date();
} else {
dd = new Date(dates);
}
var dateNumber = dd.getTime() + dateTime;
var newDate = new Date(dateNumber);
var y = newDate.getFullYear();
var m = newDate.getMonth() + 1;// 获取当前月份的日期
var d = newDate.getDate();
if (m < 10) {
m = "0" + m;
}
if (d < 10) {
d = "0" + d;
}
return y + "-" + m + "-" + d;
}
/**
* 获取指定月份的之前或之后的第几个月
*
* @param dayCount
* 正数为以后月份,负数为以前月份 如:1表示为下月,-1为上月
*
*/
function getMonthStr(dates, monthCount) {
var dd = new Date();
if (dates == "") {
dd = new Date();
} else {
dd = new Date(dates);
}
var y = dd.getFullYear();
var m = dd.getMonth() + 1;// 获取当前月份的日期
m = m + monthCount;
if (m == 0) {
m = "12";
y = y - 1;
} else if (m < 10) {
m = "0" + m;
} else if (m > 12) {
m = m - 12;
m = "0" + m;
y = y + 1;
}
return y + "-" + m;
}
/**
*
*对val值为undefined返回“”,否则返回原值
*/
function dealNull(val) {
if (typeof (val) == "undefined") {
return "";
} else {
return val;
}
}
/**
* 验证密码复杂度(必须包含数字字母)
* @param str
* @returns true:满足规则,false:不满足
*/
function validateStr(str){
var reg1 = /^(([0-9]{1,})([a-z]{1,}))|(([a-z]{1,})([0-9]{1,}))$/;
var reg2 = /^(([0-9]{1,})([A-Z]{1,}))|(([A-Z]{1,})([0-9]{1,}))$/;
//var reg3 = /^([a-zA-Z]{0,})[0-9a-z-A-z]{0,}[~`!@#$%^&*.]{0,}$/;
str = valueTrim(str);
//if(reg3.test(str)){
// return true;
//}
if(reg1.test(str)){
return true;
}
if(reg2.test(str)){
return true;
}
return false;
}
/**
* 判断字符串长度 必须大于8位小于20位,一般用于密码
* @param str 字符串
* @returns 满足返回true
*/
function valiDateLength(str){
if(str==null || str==''){
return false;
}
str = valueTrim(str);
if(parseFloat(str.length)<8 ){
return false;
}
if(parseFloat(str.length)>20){
return false;
}
return true;
}
/**
* 验证时间
* @param dataValue 格式为:YYYY-MM-DD
* @returns 匹配返回true 不匹配返回false
*/
function valiDate(dateValue){
var result = dateValue.match(/((^((1[8-9]\d{2})|([2-9]\d{3}))(-)(10|12|0?[13578])(-)(3[01]|[12][0-9]|0?[1-9])$)|(^((1[8-9]\d{2})|([2-9]\d{3}))(-)(11|0?[469])(-)(30|[12][0-9]|0?[1-9])$)|(^((1[8-9]\d{2})|([2-9]\d{3}))(-)(0?2)(-)(2[0-8]|1[0-9]|0?[1-9])$)|(^([2468][048]00)(-)(0?2)(-)(29)$)|(^([3579][26]00)(-)(0?2)(-)(29)$)|(^([1][89][0][48])(-)(0?2)(-)(29)$)|(^([2-9][0-9][0][48])(-)(0?2)(-)(29)$)|(^([1][89][2468][048])(-)(0?2)(-)(29)$)|(^([2-9][0-9][2468][048])(-)(0?2)(-)(29)$)|(^([1][89][13579][26])(-)(0?2)(-)(29)$)|(^([2-9][0-9][13579][26])(-)(0?2)(-)(29)$))/);
if(result==null){
return false;
}
return true;
}
/**
* 验证电话号码
* @param phoneValue 要验证的电话号码
* @returns 匹配返回true 不匹配返回false
*/
function validatePhone(phoneValue) {
phoneValue = valueTrim(phoneValue);
var reg = /^[1][0-9]{10}$/;
return reg.test(phoneValue);
}
/**
* 验证邮箱
* @param emailValue 要验证的邮箱
* @returns 匹配返回true 不匹配返回false
*/
function validateEmail(emailValue){
var reg = /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/;
return reg.test(emailValue);
}
/**
* 判断是否是数字
* @param numberValue 要验证的数据
* @returns 匹配返回true 不匹配返回false
*/
function isNumber(numberValue){
//定义正则表达式部分
var reg1 = /^[0-9]{0,}$/;
var reg2 = /^[1-9]{1}[0-9]{0,}$/;
//alert(numberValue);
if(numberValue ==null || numberValue.length==0){
return false;
}
numberValue = valueTrim(numberValue);
//判断当数字只有1位时
if(numberValue.length<2){
return reg1.test(numberValue);
}
return reg2.test(numberValue);;
}
/***
* 金额
* @param value
* @returns
*/
function isMoney(value) {
if(value==''){
return false;
}
value = valueTrim(value);
value = value.replace(/(^\s*)|(\s*$)/g, "");
var reg = /^[0-9]*\.?[0-9]{0,2}$/;
if(isNumber(value)){
return true;
}
if(value.length>3){
if(value.substr(0, 1)=="0"){
if(value.substr(3,value.length).length>2){
return false;
}
}
}
return reg.test(value);
}
/***
* 判断是否是0到100之间的数
* @param value
* @returns
*/
function isZeroToOne(value) {
if(value==''){
return false;
}
value = valueTrim(value);
if(isMyFloat(value)){
if(parseFloat(value)<100 && parseFloat(value)>0){
return true;
}
}
return false;
}
/**
* 验证是否是浮点数
* @param floatValue 要验证的数据
* @returns 匹配返回true 不匹配返回false
*/
function isMyFloat(floatValue){
if(floatValue==''){
return false;
}
floatValue = valueTrim(floatValue);
var reg = /^(\d+)(\.\d+)$/;
if(isNumber(floatValue)){
return true;
}
if(floatValue.length>3){
if(floatValue.substr(0, 1)=="0"){
if(floatValue.substr(0, 2)!="0."){
return false;
}
}
}
return reg.test(floatValue);
}
/**
* 判断是否是汉字
* @param charValue 要验证的数据
* @returns 匹配返回true 不匹配返回false
*/
function isCharacter(charValue){
var reg = /^[\u4e00-\u9fa5]{0,}$/;
return reg.test(charValue);
}
/**
* 验证座机号
* @param telValue 要验证的座机号
* @returns 匹配返回true 不匹配返回false
*/
function valiDateTel(telValue){
var reg = /^(\(\d{3,4}\)|\d{3,4}-)?\d{7,8}$/;
telValue = valueTrim(telValue);
if(!reg.test(telValue)){
return false;
}
return true;
}
var Wi = [ 7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2, 1 ]; // 加权因子
var ValideCode = [ 1, 0, 10, 9, 8, 7, 6, 5, 4, 3, 2 ]; // 身份证验证位值.10代表X
/**
* 验证身份证
* @param idCard 需要验证的身份证号
* @returns 匹配返回true 不匹配返回false
*/
function IdCardValidate(idCardValue) {
//去掉字符串头尾空格
idCardValue = valueTrim(idCardValue.replace(/ /g, ""));
if (idCardValue.length == 15) {
//进行15位身份证的验证
return isValidityBrithBy15IdCard(idCardValue);
} else if (idCardValue.length == 18) {
// 得到身份证数组
var a_idCard = idCardValue.split("");
//进行18位身份证的基本验证和第18位的验证
if(isValidityBrithBy18IdCard(idCardValue)&&isTrueValidateCodeBy18IdCard(a_idCard)){
return true;
}else {
return false;
}
} else {
return false;
}
}
/**
* 判断身份证号码为18位时最后的验证位是否正确
* @param a_idCard 身份证号码数组
* @return
*/
function isTrueValidateCodeBy18IdCard(a_idCard) {
var sum = 0; // 声明加权求和变量
if (a_idCard[17].toLowerCase() == 'x') {
a_idCard[17] = 10;// 将最后位为x的验证码替换为10方便后续操作
}
for ( var i = 0; i < 17; i++) {
sum += Wi[i] * a_idCard[i];// 加权求和
}
valCodePosition = sum % 11; // 得到验证码所位置
if (a_idCard[17] == ValideCode[valCodePosition]) {
return true;
} else {
return false;
}
}
/**
* 验证18位数身份证号码中的生日是否是有效生日
* @param idCard 18位书身份证字符串
* @return
*/
function isValidityBrithBy18IdCard(idCard18){
var year = idCard18.substring(6,10);
var month = idCard18.substring(10,12);
var day = idCard18.substring(12,14);
var temp_date = new Date(year,parseFloat(month)-1,parseFloat(day));
// 这里用getFullYear()获取年份,避免千年虫问题
if(temp_date.getFullYear()!=parseFloat(year)
||temp_date.getMonth()!=parseFloat(month)-1
||temp_date.getDate()!=parseFloat(day)){
return false;
}else{
return true;
}
}
/**
* 验证15位数身份证号码中的生日是否是有效生日
* @param idCard15 15位书身份证字符串
* @return
*/
function isValidityBrithBy15IdCard(idCard15){
var year = idCard15.substring(6,8);
var month = idCard15.substring(8,10);
var day = idCard15.substring(10,12);
var temp_date = new Date(year,parseFloat(month)-1,parseFloat(day));
// 对于老身份证中的你年龄则不需考虑千年虫问题而使用getYear()方法
if(temp_date.getYear()!=parseFloat(year)
||temp_date.getMonth()!=parseFloat(month)-1
||temp_date.getDate()!=parseFloat(day)){
return false;
}else{
return true;
}
}
//去掉字符串头尾空格
function valueTrim(str) {
return str.replace(/(^\s*)|(\s*$)/g, "");
}
/**
* 检验18位身份证号码(15位号码可以只检测生日是否正确即可,自行解决)
* @param idCardValue 18位身份证号
* @returns 匹配返回true 不匹配返回false
*/
function idCardVildate(cid){
var arrExp = [7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2];//加权因子
var arrValid = [1, 0, "X", 9, 8, 7, 6, 5, 4, 3, 2];//校验码
var reg = /^[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)$/;
if(reg.test(cid)){
var sum = 0, idx;
for(var i = 0; i < cid.length - 1; i++){
// 对前17位数字与权值乘积求和
sum += parseInt(cid.substr(i, 1), 10) * arrExp[i];
}
// 计算模(固定算法)
idx = sum % 11;
// 检验第18为是否与校验码相等
return arrValid[idx] == cid.substr(17, 1).toUpperCase();
}else{
return false;
}
}
/**
* 获取指定日期之前或之后的第几天
*
* @param dayCount
* 正数为以后时间,负数为以前时间 如:1表示为明天,-1为昨天
*
*/
function getDateStr(dates, dayCount) {
var dateTime = dayCount * 24 * 60 * 60 * 1000;
var dd = new Date();
if (dates == "") {
dd = new Date();
} else {
dd = new Date(dates);
}
var dateNumber = dd.getTime() + dateTime;
var newDate = new Date(dateNumber);
var y = newDate.getFullYear();
var m = newDate.getMonth() + 1;// 获取当前月份的日期
var d = newDate.getDate();
if (m < 10) {
m = "0" + m;
}
if (d < 10) {
d = "0" + d;
}
return y + "-" + m + "-" + d;
}
/**
* 获取指定月份的之前或之后的第几个月
*
* @param dayCount
* 正数为以后月份,负数为以前月份 如:1表示为下月,-1为上月
*
*/
function getMonthStr(dates, monthCount) {
var dd = new Date();
if (dates == "") {
dd = new Date();
} else {
dd = new Date(dates);
}
var y = dd.getFullYear();
var m = dd.getMonth() + 1;// 获取当前月份的日期
m = m + monthCount;
if (m == 0) {
m = "12";
y = y - 1;
} else if (m < 10) {
m = "0" + m;
} else if (m > 12) {
m = m - 12;
m = "0" + m;
y = y + 1;
}
return y + "-" + m;
}
/**
*
*对val值为undefined返回“”,否则返回原值
*/
function dealNull(val) {
if (typeof (val) == "undefined") {
return "";
} else {
return val;
}
}

JavaScript验证和数据处理的干货(经典)的更多相关文章

  1. Eclipse去除JavaScript验证错误

    这篇文章主要是对Eclipse去除js(JavaScript)验证错误进行了介绍.在Eclipse中,js文件常常会报错.可以通过如下几个步骤解决 第一步: 去除eclipse的JS验证: 将wind ...

  2. JavaScript验证正则表达式大全

    JavaScript验证正则表达式大全,搜集最全的JavaScript验证正则表达式,开始查看吧,这里的都是正则表达式的例子,具体和函数结合的使用方法,还请查看下篇文章<JavaScript使用 ...

  3. 【转】Eclipse去除js(JavaScript)验证错误

    这篇文章主要是对Eclipse去除js(JavaScript)验证错误进行了介绍.在Eclipse中,js文件常常会报错.可以通过如下几个步骤解决 第一步:去除eclipse的JS验证:将window ...

  4. javascript 验证 yyyy-MM-dd HH:mm:ss 的正则表达式

    原文:javascript 验证 yyyy-MM-dd HH:mm:ss 的正则表达式 ^((\d{2}(([02468][048])|([13579][26]))[\-\/\s]?((((0?[13 ...

  5. 使用JavaScript验证用户输入的是否为正整数

    在项目开发中,需要使用JavaScript验证用户输入的是否为正整数. 方法一: var type="^[0-9]*[1-9][0-9]*$"; var r=new RegExp( ...

  6. 纯javascript验证,100行超精简代码。

    这篇文章转自--寒飞,原帖地址http://blog.csdn.net/luoyehanfei/article/details/42262249 QQ交流群235032949 纯javascript验 ...

  7. Javascript的二进制数据处理学习 ——nodejs环境和浏览器环境分别分析

    以前用JavaScript主要是处理常规的数字.字符串.数组对象等数据,基本没有试过用JavaScript处理二进制数据块,最近的项目中涉及到这方面的东西,就花一段时间学了下这方面的API,在此总结一 ...

  8. 转发 eclipse 取消javascript 验证

    博客地址: http://blog.csdn.net/itchiang/article/details/7498474 最近出了一个很怪的现象,某一个js文件,在某一个Eclipse工程中呆的好好的, ...

  9. JavaScript验证函数大全

    1. 长度限制 <script> function test() { if(document.a.b.value.length>50) { alert("不能超过50个字符 ...

随机推荐

  1. ubuntu文件管理常用命令

    1.关闭防火墙:ufw disable 2.以.开头的表示隐藏文件 3..和..分别代表当前目录以及当前目录的父目录 4.显示当前用户所在目录pwd 5.touch创建空文件 6.mkdir创建新目录 ...

  2. Objective-C实现常用的4种排序算法

    OC实现的4种排序又来了! 4种排序分别是:快速排序.冒泡排序.选择排序.插入排序,其他的我就不写了,因为OC里的数组中不能存放基本数据类型,如int不能存放,只能放对象,所以所有的数据我用了NSNu ...

  3. Docker教程:使用docker配置python开发环境

    http://blog.csdn.net/pipisorry/article/details/50808034 Docker的安装和配置 [Docker教程:docker的安装] [Docker教程: ...

  4. ROS_Kinetic_19 群机器人框架示例(micros swarm framework)

    ROS_Kinetic_19 群机器人框架示例(micros swarm framework) 官方网址:http://wiki.ros.org/micros_swarm_framework 这个包是 ...

  5. OJ题:将一个数倒置输出

    题目描述: 输入一个数,假如num = 12345 , 输出 54321,以此类推. 代码实现: ) ; }

  6. Java实现二叉树的创建和遍历操作(有更新)

    博主强烈建议跳过分割线前面的部分,直接看下文更新的那些即可. 最近在学习二叉树的相关知识,一开始真的是毫无头绪.本来学的是C++二叉树,但苦于编译器老是出故障,于是就转用Java来实现二叉树的操作.但 ...

  7. ViewPager 实现 Galler 效果, 中间大图显示,两边小图展示

    正常情况下, ViewPager 一页只能显示一项数据, 但是我们常常看到网上,特别是电视机顶盒的首页经常出现中间大图显示两端也都露出一点来,这种效果怎么实现呢?先上一张效果图: 大家第一眼肯定想到了 ...

  8. ARM v7汇编与相关练习

    程序入口: _startc 语言入口: main@:              注释;main:           标签;伪指令:         给汇编器读的指令;.global main    ...

  9. Android进阶(十六)子线程调用Toast报Can't create handler inside thread that has not called Looper.prepare() 错误

    原子线程调用Toast报Can't create handler inside thread that has not called Looper.prepare() 错误 今天用子线程调Toast报 ...

  10. PO订单审批拒绝API

    DECLARE l_return_status VARCHAR2(1); l_return_code VARCHAR2(1000); l_exception_msg VARCHAR2(4000); l ...