在使用JS框架之前自己写的一些工具代码
来自于:http://vb2005xu.javaeye.com/blog/235863
//vb2005xu@sina.com版权所有 (*^__^*) 嘻嘻……
//function -- Debug
function debug(msg)
{
if (msg == undefined)
{
msg = 'Not Parameter' ;
}
alert('Debug: ' + msg);
}
//function -- DOM
function $(id){return document.getElementById(id);}
function $name(ids){return document.getElementsByName(ids);}
//function -- 操作 隐藏/显示 ; 禁用/恢复
function hide(obj){obj.style.display="";}
function unhide(obj){obj.style.display="none";}
function lock(obj){obj.disabled="disabled";}
function unlock(obj){obj.disabled="";}
function getFocus(obj){obj.focus();}
function setSelect(obj){obj.select();}
//function -- Form 控件操作
function unlockTextInput(id){var obj=$(id);unlock(obj);getFocus(obj);setSelect(obj);}
function unlockSelectOption(id){var obj=$(id);unlock(obj);getFocus(obj);}
function checkboxVarity(ids) //验证多选框有无选中
{
var checkboxobj = $name(ids);
var selectState = false ;
for(i = 0 ; i < checkboxobj.length ; i++ )
{
if (checkboxobj[i].checked)
{
selectState = true ;
break ;
}
}
return selectState ;
}
//function -- Cookie
function createCookie(name, value, days) {
var expires = '';
if (days) {
var date = new Date();
date.setTime(date.getTime() + (days*24*60*60*1000));
var expires = '; expires=' + date.toGMTString();
}
document.cookie = name + '=' + value + expires + '; path=/';
}
function readCookie(name) {
var cookieCrumbs = document.cookie.split(';');
var nameToFind = name + '=';
for (var i = 0; i < cookieCrumbs.length; i++) {
var crumb = cookieCrumbs[i];
while (crumb.charAt(0) == ' ') {
crumb = crumb.substring(1, crumb.length); /* delete spaces */
}
if (crumb.indexOf(nameToFind) == 0) {
return crumb.substring(nameToFind.length, crumb.length);
}
}
return null;
}
function eraseCookie(name) {
createCookie(name, '', -1);
}
//function -- Base64
function stringToBase64(string, padchar) {
return window.btoa(string);
}
function base64ToString(string) {
string = string.replace(/\s+/g, "");
return window.atob(string);
}
//function -- 操作Table
function getCurrentLineIndex(id){var obj=$(id);return obj.rowIndex;}
function getCurrentColumnIndex(id){var obj=$(id);return obj.cellIndex;}
//function -- 操作Code
function codeHightLight(id){var obj=$(id);obj.style.background='#fff';}
//Ajax
//define a bool paramter to check IE instance
var xmlhttp = false ;
//check client brower is IE
try {
// If javascript is greater than 5
xmlhttp = new ActiveXObject("MSXML2.XMLHTTP");
//alert("You are using Microsoft Internet Explorer .");
}
catch (e){
//else will use ActiveXObject older version
try {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
//alert("You are using old Microsoft Internet Explorer .");
}
catch (e){
//using brower is no IE.
xmlhttp = false ;
}
}
if (!xmlhttp && typeof XMLHttpRequest != 'undefined') {
xmlhttp = new XMLHttpRequest();
//alert("You are not using Microsoft Internet Explorer .");
}
function appendText(obj,xmlhttp)
{
if (xmlhttp.readyState == 4 && xmlhttp.status == 200 ){
obj.innerHTML = xmlhttp.responseText ;
}
}
function makerequest(serverpage,objID)
{
var obj = document.getElementById(objID);
xmlhttp.open("GET",serverpage);
xmlhttp.onreadystatechange = appendText(obj,xmlhttp) ;
xmlhttp.send(null) ;
}
/**
* ###################
* ################### Lalestory 项目中抽取出来的JS功能函数--作者: 许消寒
* ###################
*/
/**
* 功能:判断一个字符串是否为空字符串
* 参数:str 检验值
* 返回:TRUE OR FALSE
*/
function isBlank(str){
if(str.length < 1){
return true;
}
for(i = 0; i < str.length; i ++){
if(str.substring(i, i + 1) != ' '){
return false;
}
}
return true;
}
/**
* 功能:检验长度是否正确
* 参数:str 检验值,minlen 最小长度,maxlen 最大长度
* 返回:TRUE OR FALSE
*/
function checkByteLength(str,minlen,maxlen) {
if (str == null) return false; //为空返回false
var l = str.length;
var blen = 0;
for(i=0; i<l; i++) { //循环取得检验值的长度
if ((str.charCodeAt(i) & 0xff00) != 0) {
blen ++;
}
blen ++;
}
if (blen > maxlen || blen < minlen) { //判断长度是否合法
return false;
}
return true;
}
/**
* 功能:检验用户名是否合法
* 参数:value 检验值
* 返回:TRUE OR FALSE
*/
function validateUsername(value){
var patn = /^[a-zA-Z]+[a-zA-Z0-9]+$/;
//var patn = /^[^\s]*$/;
if(!checkByteLength(value,4,20)) return true; //判断长度是否合法
if(!patn.test(value)){ //判断格式是否合法
return true;
}
return false;
}
/**
* 功能:检验登陆或者注册的用户名 -- 用户名称至少为4个字符,但是少于20个字符
* 参数:value 检验值
* 返回:TRUE OR FALSE
*/
function checkUserName(value)
{
if(value == '') //判断用户名是否为空,返回false
{
return false;
}
if(validateUsername(value)) //判断用户名是否合法
{
return false;
}
return true;
}
/**
* 功能:检验Email是否合法
* 参数:value 检验值
* 返回:TRUE OR FALSE
*/
function validateEmail(value){
var patn=/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/;
if(!patn.test(value)) return false; //判断Email是否合法
return true;
}
/**
* 功能:检验Email
* 参数:value 检验值
* 返回:TRUE OR FALSE
*/
function CheckEmail(value)
{
if(value == '') //判断Email是否为空
{
return false;
}
if(!validateEmail(value)) //判断Email是否合法
{
return false
}
return true;
}
/**
* 功能: 检验是否包含特殊字符
* 参数:value 检验值
* 返回:TRUE OR FALSE
*/
function validateSpecSymbol(value) {
return true ;//! /^[a-zA-Z0-9\u4E00-\u9FA5#\]*$/.test(value);
}
/**
* 功能: 检验是否包含特殊字符
* 参数:value 检验值
* 返回:TRUE OR FALSE
*/
function CheckSpecSymbol(value)
{
if(value == '') //判断Email是否为空
{
return false;
}
if(!validateSpecSymbol(value)) //判断Email是否合法
{
return false ;
}
return true;
}
/**
* 功能: 返回指定颜色的文本
* 参数:content 文本 , colorValue为颜色值 , cssClass 为CSS风格
* 返回:TRUE OR FALSE
*/
function getSpeciColorText(content,size,colorValue,cssClass)
{
var str = "<font size='" + size + "' class='" ;
str += cssClass + "' color='"
str += colorValue + "'>" ;
str += content + "</font>" ;
return str ;
}
/**
* 功能: 在指定的页面标签后放入一张图片
* 参数:parentTagName为指定的页面标签 ,imgsrc为图片路径
* 返回:TRUE OR FALSE
*/
function appendImg(parentTagName,imgsrc)
{
//接收 document.all.yourTagName
var parentTag = document.getElementsByName(parentTagName)[0] ;
var str = "<img src='" + imgsrc + "'>" ;
parentTagName.innerHTML = str ;
}
/* ################################## 在beijingextreme项目中的具体应用 ###############################*/
//function -- 操作层
function $(elementID)
{
return document.getElementById(elementID) ;
}
function showDiv(divID)
{
var divId = $(divID) ;
divId.style.display = "" ;
}
function hideDiv(divID)
{
var divId = $(divID) ;
divId.style.display = "none" ;
}
//function -- Debug
function debug(msg)
{
if (msg == undefined)
{
msg = 'Not Parameter' ;
}
alert('Debug: ' + msg);
}
//function -- DOM
function $(id){return document.getElementById(id);}
function $name(ids){return document.getElementsByName(ids);}
//function -- 操作 隐藏/显示 ; 禁用/恢复
function hide(obj){obj.style.display="";}
function unhide(obj){obj.style.display="none";}
function lock(obj){obj.disabled="disabled";}
function unlock(obj){obj.disabled="";}
function getFocus(obj){obj.focus();}
function setSelect(obj){obj.select();}
//function -- Form 控件操作
function unlockTextInput(id){var obj=$(id);unlock(obj);getFocus(obj);setSelect(obj);}
function unlockSelectOption(id){var obj=$(id);unlock(obj);getFocus(obj);}
function checkboxVarity(ids) //验证多选框有无选中
{
var checkboxobj = $name(ids);
var selectState = false ;
for(i = 0 ; i < checkboxobj.length ; i++ )
{
if (checkboxobj[i].checked)
{
selectState = true ;
break ;
}
}
return selectState ;
}
//function -- Cookie
function createCookie(name, value, days) {
var expires = '';
if (days) {
var date = new Date();
date.setTime(date.getTime() + (days*24*60*60*1000));
var expires = '; expires=' + date.toGMTString();
}
document.cookie = name + '=' + value + expires + '; path=/';
}
function readCookie(name) {
var cookieCrumbs = document.cookie.split(';');
var nameToFind = name + '=';
for (var i = 0; i < cookieCrumbs.length; i++) {
var crumb = cookieCrumbs[i];
while (crumb.charAt(0) == ' ') {
crumb = crumb.substring(1, crumb.length); /* delete spaces */
}
if (crumb.indexOf(nameToFind) == 0) {
return crumb.substring(nameToFind.length, crumb.length);
}
}
return null;
}
function eraseCookie(name) {
createCookie(name, '', -1);
}
//function -- Base64
function stringToBase64(string, padchar) {
return window.btoa(string);
}
function base64ToString(string) {
string = string.replace(/\s+/g, "");
return window.atob(string);
}
//function -- 操作Table
function getCurrentLineIndex(id){var obj=$(id);return obj.rowIndex;}
function getCurrentColumnIndex(id){var obj=$(id);return obj.cellIndex;}
//function -- 操作Code
function codeHightLight(id){var obj=$(id);obj.style.background='#fff';}
//Ajax
//define a bool paramter to check IE instance
var xmlhttp = false ;
//check client brower is IE
try {
// If javascript is greater than 5
xmlhttp = new ActiveXObject("MSXML2.XMLHTTP");
//alert("You are using Microsoft Internet Explorer .");
}
catch (e){
//else will use ActiveXObject older version
try {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
//alert("You are using old Microsoft Internet Explorer .");
}
catch (e){
//using brower is no IE.
xmlhttp = false ;
}
}
if (!xmlhttp && typeof XMLHttpRequest != 'undefined') {
xmlhttp = new XMLHttpRequest();
//alert("You are not using Microsoft Internet Explorer .");
}
function appendText(obj,xmlhttp)
{
if (xmlhttp.readyState == 4 && xmlhttp.status == 200 ){
obj.innerHTML = xmlhttp.responseText ;
}
}
function makerequest(serverpage,objID)
{
var obj = document.getElementById(objID);
xmlhttp.open("GET",serverpage);
xmlhttp.onreadystatechange = appendText(obj,xmlhttp) ;
xmlhttp.send(null) ;
}
/**
* ###################
* ################### Lalestory 项目中抽取出来的JS功能函数--作者: 许消寒
* ###################
*/
/**
* 功能:判断一个字符串是否为空字符串
* 参数:str 检验值
* 返回:TRUE OR FALSE
*/
function isBlank(str){
if(str.length < 1){
return true;
}
for(i = 0; i < str.length; i ++){
if(str.substring(i, i + 1) != ' '){
return false;
}
}
return true;
}
/**
* 功能:检验长度是否正确
* 参数:str 检验值,minlen 最小长度,maxlen 最大长度
* 返回:TRUE OR FALSE
*/
function checkByteLength(str,minlen,maxlen) {
if (str == null) return false; //为空返回false
var l = str.length;
var blen = 0;
for(i=0; i<l; i++) { //循环取得检验值的长度
if ((str.charCodeAt(i) & 0xff00) != 0) {
blen ++;
}
blen ++;
}
if (blen > maxlen || blen < minlen) { //判断长度是否合法
return false;
}
return true;
}
/**
* 功能:检验用户名是否合法
* 参数:value 检验值
* 返回:TRUE OR FALSE
*/
function validateUsername(value){
var patn = /^[a-zA-Z]+[a-zA-Z0-9]+$/;
//var patn = /^[^\s]*$/;
if(!checkByteLength(value,4,20)) return true; //判断长度是否合法
if(!patn.test(value)){ //判断格式是否合法
return true;
}
return false;
}
/**
* 功能:检验登陆或者注册的用户名 -- 用户名称至少为4个字符,但是少于20个字符
* 参数:value 检验值
* 返回:TRUE OR FALSE
*/
function checkUserName(value)
{
if(value == '') //判断用户名是否为空,返回false
{
return false;
}
if(validateUsername(value)) //判断用户名是否合法
{
return false;
}
return true;
}
/**
* 功能:检验Email是否合法
* 参数:value 检验值
* 返回:TRUE OR FALSE
*/
function validateEmail(value){
var patn=/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/;
if(!patn.test(value)) return false; //判断Email是否合法
return true;
}
/**
* 功能:检验Email
* 参数:value 检验值
* 返回:TRUE OR FALSE
*/
function CheckEmail(value)
{
if(value == '') //判断Email是否为空
{
return false;
}
if(!validateEmail(value)) //判断Email是否合法
{
return false
}
return true;
}
/**
* 功能: 检验是否包含特殊字符
* 参数:value 检验值
* 返回:TRUE OR FALSE
*/
function validateSpecSymbol(value) {
return true ;//! /^[a-zA-Z0-9\u4E00-\u9FA5#\]*$/.test(value);
}
/**
* 功能: 检验是否包含特殊字符
* 参数:value 检验值
* 返回:TRUE OR FALSE
*/
function CheckSpecSymbol(value)
{
if(value == '') //判断Email是否为空
{
return false;
}
if(!validateSpecSymbol(value)) //判断Email是否合法
{
return false ;
}
return true;
}
/**
* 功能: 返回指定颜色的文本
* 参数:content 文本 , colorValue为颜色值 , cssClass 为CSS风格
* 返回:TRUE OR FALSE
*/
function getSpeciColorText(content,size,colorValue,cssClass)
{
var str = "<font size='" + size + "' class='" ;
str += cssClass + "' color='"
str += colorValue + "'>" ;
str += content + "</font>" ;
return str ;
}
/**
* 功能: 在指定的页面标签后放入一张图片
* 参数:parentTagName为指定的页面标签 ,imgsrc为图片路径
* 返回:TRUE OR FALSE
*/
function appendImg(parentTagName,imgsrc)
{
//接收 document.all.yourTagName
var parentTag = document.getElementsByName(parentTagName)[0] ;
var str = "<img src='" + imgsrc + "'>" ;
parentTagName.innerHTML = str ;
}
/* ################################## 在beijingextreme项目中的具体应用 ###############################*/
//function -- 操作层
function $(elementID)
{
return document.getElementById(elementID) ;
}
function showDiv(divID)
{
var divId = $(divID) ;
divId.style.display = "" ;
}
function hideDiv(divID)
{
var divId = $(divID) ;
divId.style.display = "none" ;
}