常用简易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 相关文章推荐
JS删除字符串中重复字符方法
Mar 09 Javascript
判断一个对象是否为jquery对象的方法
Mar 12 Javascript
在jquery中的ajax方法怎样通过JSONP进行远程调用
Apr 04 Javascript
用html+css+js实现的一个简单的图片切换特效
May 28 Javascript
node.js中的http.response.removeHeader方法使用说明
Dec 14 Javascript
iscroll.js的上拉下拉刷新时无法回弹的解决方法
Feb 18 Javascript
浅谈jQuery为哪般去掉了浏览器检测
Aug 29 Javascript
微信小程序 action-sheet底部菜单详解
Oct 27 Javascript
JavaScript中定义对象原型的两种使用方法
Dec 15 Javascript
Bootstrap轮播图学习使用
Feb 10 Javascript
使用异步组件优化Vue应用程序的性能
Apr 28 Javascript
JavaScript实现随机点名器
Mar 25 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
PHP 防恶意刷新实现代码
2010/05/16 PHP
thinkphp 一个页面使用2次分页的实现方法
2013/07/15 PHP
PHP删除指定目录中的所有目录及文件的方法
2015/02/26 PHP
php实现微信企业转账功能
2018/10/02 PHP
PHP读取Excel内的图片(phpspreadsheet和PHPExcel扩展库)
2019/11/19 PHP
深入分析PHP设计模式
2020/06/15 PHP
PHP autoload使用方法及步骤详解
2020/09/05 PHP
利用javascript移动div层-javascript 拖动层
2009/03/22 Javascript
用json方式实现在 js 中建立一个map
2014/05/02 Javascript
JS获取网页图片name属性的方法
2015/04/01 Javascript
Ext JS动态加载JavaScript创建窗体的方法
2016/06/23 Javascript
JS获取input file绝对路径的方法(推荐)
2016/08/02 Javascript
微信小程序 数据交互与渲染实例详解
2017/01/21 Javascript
JS实现DIV高度自适应窗口示例
2017/02/16 Javascript
node.js+captchapng+jsonwebtoken实现登录验证示例
2017/08/17 Javascript
js判断节假日实例代码
2017/12/27 Javascript
vue的安装及element组件的安装方法
2018/03/09 Javascript
Vue实现textarea固定输入行数与添加下划线样式的思路详解
2018/06/28 Javascript
JS中数组与对象的遍历方法实例小结
2018/08/14 Javascript
nodejs使用node-xlsx生成excel的方法示例
2019/08/22 NodeJs
Vue移动端项目实现使用手机预览调试操作
2020/07/18 Javascript
js实现带积分弹球小游戏
2020/07/21 Javascript
JS+CSS实现过渡特效
2021/01/02 Javascript
利用Python和OpenCV库将URL转换为OpenCV格式的方法
2015/03/27 Python
python中defaultdict的用法详解
2017/06/07 Python
Python实现PS滤镜功能之波浪特效示例
2018/01/26 Python
pandas 空的dataframe 插入列名的示例
2018/10/30 Python
Python从单元素字典中获取key和value的实例
2018/12/31 Python
Python 绘制酷炫的三维图步骤详解
2019/07/12 Python
Python request操作步骤及代码实例
2020/04/13 Python
基于html和CSS3制作酷炫的导航栏
2015/09/23 HTML / CSS
水果连锁超市创业计划书
2014/01/24 职场文书
个人委托书怎么写
2014/04/04 职场文书
2015年国培研修感言
2015/08/01 职场文书
2016年中学清明节活动总结
2016/04/01 职场文书
pytorch 两个GPU同时训练的解决方案
2021/06/01 Python