常用简易JavaScript函数


Posted in Javascript onApril 09, 2009

//函数名:strByteLength
//功能介绍:返回字符串的字节长度
//参数说明:str 要检查的字符串
//返回值:字符串长度
function strByteLength(str)
{
var i,sum;
sum=0;
for(i=0;i<str.length;i++)
{
if ((str.charCodeAt(i)>=0) & (str.charCodeAt(i)<=255))
sum=sum+1;
else
sum=sum+2;
}
return sum;
}
//函数名:fucCheckLength
//功能介绍:检查表单是否符合规定的长度
//参数说明:obj 要检查的表单对象
// name 对象名称
// length 规定长度
//返回值:true(符合) or false(不符)
function fucCheckLength(obj , name , length)
{
var i,sum;
sum=0;
var strTemp = obj.value;
for(i=0;i<strTemp.length;i++)
{
if ((strTemp.charCodeAt(i)>=0) & (strTemp.charCodeAt(i)<=255))
sum=sum+1;
else
sum=sum+2;
}
if(sum<=length)
{
return true;
}
else
{
alert(name+"超出规定长度!最长允许"+length+"个字符(中文算2位)!");
obj.focus();
return false;
}
}
//检测电子邮件是否合法
function checkEmail(Object)
{
var pattern = /^[.-_A-Za-z0-9]+@([-_A-Za-z0-9]+\.)+[A-Za-z0-9]{2,3}$/;
var strValue=Object.value;
if(strValue.match(pattern)==null){
alert("Email不合法,请重新填写!");
Object.focus();
return false;
}else{
return true;
}
}
//去空隔函数
function Jtrim(str){
var i = 0;
var len = str.length;
if ( str == "" ) return( str );
j = len -1;
flagbegin = true;
flagend = true;
while ( flagbegin == true & i< len){
if ( str.charAt(i) == " " ){
i=i+1;
flagbegin=true;
}else{
flagbegin=false;
}
}
while (flagend== true & j>=0){
if (str.charAt(j)==" "){
j=j-1;
flagend=true;
}else{
flagend=false;
}
}
if ( i > j ) return ("")
trimstr = str.substring(i,j+1);
return trimstr;
}
//函数名:JtrimCn
//功能介绍:去掉字符串前后的空格[包括中文空格]
//参数说明:str 要操作的字符串
//返回值:删除了前后空格[包括中文空格]的字符串
function JtrimCn(str){
var i = 0;
if (str == null || str == undefined) {
return "";
}
var len = str.length;
if ( str == "" ) {
return( str );
}
j = len -1;
flagbegin = true;
flagend = true;
while ( flagbegin == true & i< len){
if ( str.charAt(i) == " " || str.charAt(i) == " " ){
i=i+1;
flagbegin=true;
}else{
flagbegin=false;
}
}
while (flagend== true & j>=0){
if (str.charAt(j)==" " || str.charAt(j) == " "){
j=j-1;
flagend=true;
}else{
flagend=false;
}
}
if ( i > j ) {
return ("")
}
var trimstr = str.substring(i,j+1);
return trimstr;
}
//0-9,A-Z,a-z规范字符判断
function isChar(Str){
var regu = "^([0-9a-zA-Z]+)$";
var re = new RegExp(regu);
if (Str.search(re) != -1){
return true;
}
return false;
}
//判断是否数字
function IsNum(Str){
var regu = "^([0-9]+)$";
var re = new RegExp(regu);
if (Str.search(re) != -1)
return true;
{
return false;
}
}
//函数名:funcIsNotEmpty
//功能介绍:检查字符串是否为空
//参数说明:str 字符串
//返回值:true:不为空 false:为空
function funcIsNotEmpty(str){
var s = /\S/;
if(str==null){
return false;
}
return s.test(str);
}
//函数名:fucCheckLength
//功能介绍:检查表单是否符合规定的长度
//参数说明:objValue 要检查的表单对象的数值
// name 对象名称
// minLen 最小长度
// maxLen 最大长度
//返回值:true(符合) or false(不符)
function fucCheckLengthB(objValue , minLen , maxLen)
{
var i,sum;
sum=0;
var strTemp = objValue;
for(i=0;i<strTemp.length;i++)
{
if ((strTemp.charCodeAt(i)>=0) & (strTemp.charCodeAt(i)<=255))
sum=sum+1;
else
sum=sum+2;
}
if(sum<=maxLen & sum >= minLen)
{
return true;
}
else
{
return false;
}
}
//sDate1和sDate2是2002-12-18格式
function funDateDiff(sDate1, sDate2){
var aDate, oDate1, oDate2, iDays ;
aDate = sDate1.split("-") ;
//转换为12-18-2002格式
oDate1 = new Date(aDate[1] + '-' + aDate[2] + '-' + aDate[0]);
aDate = sDate2.split("-") ;
oDate2 = new Date(aDate[1] + '-' + aDate[2] + '-' + aDate[0]) ;
//把相差的毫秒数转换为天数
iDays = parseInt(Math.abs(oDate1 - oDate2) / 1000 / 60 / 60 /24);
//如果开始时间小于结束时间
if (sDate1 > sDate2)
{
return (-1 * iDays);
}
return iDays;
}
//检测电子邮件是否合法
function funcCheckEmail(strValue)
{
var pattern = /^[.-_A-Za-z0-9]+@([-_A-Za-z0-9]+\.)+[A-Za-z0-9]{2,3}$/;
if(strValue.match(pattern)==null){
return false;
}else{
return true;
}
}
//函数名:fucCheckMaxLength
//功能介绍:检查表单是否符合规定的长度
//参数说明:objValue 要检查的表单对象的数值
// name 对象数值
// maxLen 最大长度
//返回值:true(符合) or false(不符)
function fucCheckMaxLength(objValue , maxLen)
{
return fucCheckLengthB(objValue, 0 ,maxLen );
}
//函数名:fucCheckMaxLength
//功能介绍:检查指定对象的数值是否符合规定的长度
//参数说明:objValue 要检查的表单对象的数值
// name 对象
// maxLen 最大长度
//返回值:true(符合) or false(不符)
function fucCheckObjMaxLength(obj , maxLen)
{
if (obj == null) {
return false;
}
return fucCheckLengthB(obj.value, 0 ,maxLen );
}
//函数名:funcCheckInvalidChar
//功能介绍:判断指定的字段是否有非法字符<>
//参数说明:obj 要检查的表单对象
//返回值:true(没有) or false(有)
function funcCheckInvalidChar(obj)
{
if (obj == null || obj.value== "")
{
return true;
}
//alert(obj.value);
var pattern = /[<>]/;
if(pattern.test(obj.value)){
return false;
}else{
return true;
}
}
/**
* 判断指定的ID的对象的最大长度是否正确
* param: objId 对象ID
* maxLength 最大长度
* return: true 正确 , false 不正确
*/
function lengthMaxCheckMsg(objId, maxLength, objName ,needFocus, showMsg) {
//个人信息check
var obj = document.getElementById(objId);
if (!fucCheckObjMaxLength(obj, maxLength)) {
if (showMsg == null || showMsg== "") {
alert(objName + "最多只能输入" + (maxLength/2) + "个汉字(或" + maxLength + "个英文数字)");
} else {
alert(showMsg);
}
if (needFocus) {
obj.focus();
}
return false;
}
return true;
}
/**
* 判断指定的ID的对象的是否包含非法字符
* param: objId 对象ID
* objName 对象的名称
* needFocus 是否需要设焦点
* showMsg 显示的错误消息
* return: true 正确 , false 不正确
*/
function invalidCharCheckMsg(objId, objName,needFocus, showMsg) {
//个人信息check
var obj = document.getElementById(objId);
if (!funcCheckInvalidChar(obj)) {
if (showMsg == null || showMsg== "") {
alert(objName + '中不能含有“<”或“>”');
} else {
alert(showMsg);
}
if (needFocus) {
obj.focus();
}
return false;
}
return true;
}
/**
* 判断指定的ID的对象是否为空
* param: objId 对象ID
* objName 对象的名称
* needFocus 是否需要设焦点
* showMsg 显示的错误消息
* return: true 不为空 , false 为空
*/
function emptyCheckMsg(objId, objName,needFocus, showMsg) {
//个人信息check
var obj = document.getElementById(objId);
if (!funcIsNotEmpty(obj.value)) {
if (showMsg == null || showMsg== "") {
alert(objName + '不能为空!');
} else {
alert(showMsg);
}
if (needFocus) {
obj.focus();
}
return false;
}
return true;
}
/*日期计算函数
* date 2007-01-01
* cnt 1 or -1
* return 2007-01-02
*/
function getDate(date , cnt){
if(date.length!=10){
return "";
}
var dateArray = date.split("-")
if(dateArray==null){
return "";
}
var temDate = new Date(dateArray[0], dateArray[1]-1, dateArray[2]);
var newDate = Date.UTC(temDate.getYear(),temDate.getMonth(),temDate.getDate())
newDate = newDate + (cnt*24*60*60*1000);
newDate = new Date(newDate);
var month = newDate.getMonth()+1;
var day = newDate.getDate();
if(Number(month)<10)
month = "0"+month;
if(Number(day)<10)
day = "0"+day;
var retDate = newDate.getYear() + "-" + month + "-" + day;
return retDate;
}

Javascript 相关文章推荐
javascript onmouseout 解决办法
Jul 17 Javascript
js获取某元素的class里面的css属性值代码
Jan 16 Javascript
jquery序列化form表单使用ajax提交后处理返回的json数据
Mar 03 Javascript
使用js判断TextBox控件值改变然后出发事件
Mar 07 Javascript
JS模拟键盘打字效果的方法
Aug 05 Javascript
jQuery操作属性和样式详解
Apr 13 Javascript
JavaScript实现Base64编码转换
Apr 23 Javascript
全面接触神奇的Bootstrap导航条实战篇
Aug 01 Javascript
Sortable.js拖拽排序使用方法解析
Nov 04 Javascript
jQuery EasyUI的TreeGrid查询功能实现方法
Aug 08 jQuery
微信小程序实现星级评分和展示
Jul 05 Javascript
微信小程序下拉框功能的实例代码
Nov 06 Javascript
javascript fullscreen全屏实现代码
Apr 09 #Javascript
jQuery 插件 将this下的div轮番显示
Apr 09 #Javascript
javascript RadioButtonList获取选中值
Apr 09 #Javascript
Cookie 注入是怎样产生的
Apr 08 #Javascript
javascript 表格排序和表头浮动效果(扩展SortTable)
Apr 07 #Javascript
javascript 放大镜效果js组件 qsoft.PopBigImage.v0.35 加入了chrome支持
Apr 07 #Javascript
javascript 日历提醒系统( 兼容所有浏览器 )
Apr 07 #Javascript
You might like
SONY SRF-22W(33W)的电路分析和维修案例
2021/03/02 无线电
PHP中用接口、抽象类、普通基类实现“面向接口编程”与“耦合方法”简述
2011/03/23 PHP
php判断手机访问还是电脑访问示例分享
2014/01/20 PHP
PHP循环结构实例讲解
2014/02/10 PHP
php限制文件下载速度的代码
2015/10/20 PHP
使用ThinkPHP生成缩略图及显示
2017/04/27 PHP
thinkphp 5框架实现登陆,登出及session登陆状态检测功能示例
2019/10/10 PHP
JQuery EasyUI 对话框的使用方法
2010/10/24 Javascript
JavaScript中链式调用之研习
2011/04/07 Javascript
javascript监听鼠标滚轮事件浅析
2014/06/05 Javascript
使用JQuery库提供的扩展功能实现自定义方法
2014/09/09 Javascript
javascript继承机制实例详解
2014/11/20 Javascript
js实现浮动在网页右侧的简洁QQ在线客服代码
2015/09/04 Javascript
浅谈JS原型对象和原型链
2016/03/02 Javascript
JavaScript+HTML5实现的日期比较功能示例
2017/07/12 Javascript
iscroll实现下拉刷新功能
2017/07/18 Javascript
Vue keep-alive实践总结(推荐)
2017/08/31 Javascript
vue form 表单提交后刷新页面的方法
2018/09/04 Javascript
详解Vue中组件的缓存
2019/04/20 Javascript
[45:50]完美世界DOTA2联赛PWL S3 CPG vs Forest 第二场 12.16
2020/12/17 DOTA
Python Socket编程入门教程
2014/07/11 Python
python控制台中实现进度条功能
2015/11/10 Python
python实现识别相似图片小结
2016/02/22 Python
python实现实时监控文件的方法
2016/08/26 Python
pandas删除指定行详解
2019/04/04 Python
python实现祝福弹窗效果
2019/04/07 Python
在IE6系列等老式浏览器中使用HTML5的新标签实现方案
2012/12/25 HTML / CSS
英国和爱尔兰的自炊式豪华度假小屋:Rural Retreats
2018/06/08 全球购物
区优秀教师事迹材料
2014/02/10 职场文书
服装店营销方案
2014/03/10 职场文书
12岁生日演讲稿
2014/05/14 职场文书
网络文明传播志愿者活动方案
2014/08/20 职场文书
先进党支部事迹材料
2014/12/24 职场文书
高校自主招生校长推荐信
2015/03/23 职场文书
Oracle11g r2 卸载干净重装的详细教程(亲测有效已重装过)
2021/06/04 Oracle
springboot读取nacos配置文件
2022/05/20 Java/Android