麻辣堂|资源主站|开发论坛|在线手册
首页 Apache Linux Java MySQL 注册帮助 
PHP项目开发组是PHP开发资源网于2007组年建成立的项目开发团队,目前核心开发成员有27人, 项目协作成员8名.下设7个开发组,主要承接大/中型网站项目开发任务。

    由于开发任务较多,人员比较紧张,现面向社会招聘全职或者兼职开发人员,不管你是在校大学生,还是全职开发人员,以及SOHO都可以联系本站,我们可以长期合作,并为您带来丰厚的报酬。
  您现在的位置:PHP开发资源网 > 麻辣堂 > 详细资料
待解决
发布一个东东希望大家有用
悬赏分:20 - 2007年08月22日

// JavaScript Document
/*
* @author :失忆今生
* @QQ :42017217
* @date :2007-04-30
* @Version: 1.0
* @在开发过程中常常被美工把加的JAVASCRIPT给清掉,
* @为了减少在开发过程中做重复工作特写些代码,同时间也可以减少工作量
* @其中有些地方借鉴了别人的经验,如果你有什么好的方法可以和我交流
*/
/*================================验证属性对照表===============================*/
//vt:填写数据类型;on:错误提示信息;r:是否为必填项true为必填写;max:是了大值/
//mil:最小长度;mal:最大长度;decimalLen小数位长度;mis最少选择项数;mas最大选择/
//min;最小整数;max:最大值整数|{表单属性可以自定义,如 //"text" value="" tt="你好">取得性值如:document.form.element.tt==你好!} /
/*=============================================================================*/
var xmlHttp;
function creatXMLHttpRequest(){
msxml_progid=['MSXML2.XMLHTTP.3.0','MSXML2.XMLHTTP','Microsoft.XMLHTTP'];

try{
xmlHttp=new window.XMLHttpRequest();
}catch(e){
for(var i=0;i try{
xmlHttp=new ActiveXObject(msxml_progid);
break;
}catch(e){}
}
}
}

/*
*method string 传送方式
*url string 传送地址
*hand string 接收处理函数
*queryString string 发送字符串
*/
function startRequest(method,url,hand,queryString){
if(queryString=="")return false;//字符串为空就啥事也不做
creatXMLHttpRequest();
xmlHttp.open(method,url,"true");
if(hand!=""){
eval("xmlHttp.onreadystatechange = "+hand);
}else{
xmlHttp.onreadystatechange = handleStateChange;
}
xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded;");
xmlHttp.send(queryString);

return true;
}

function handleStateChange() {
var div = '

';
document.body.innerHTML = div + document.body.innerHTML;
if(xmlHttp.readyState == 1) {
document.Dial.innerHTML = "正在处理中,请稍候......请不要关闭浏览器";
}
if(xmlHttp.readyState == 4) {
if(xmlHttp.status == 200) {
var allcon = xmlHttp.responseText;
document.Dial.innerHTML = allcon;
}
}
}
/*
* @取得表单变量
* @formName string 表单名
* @v boolean 是不验证
*/
function checkForm(formName,vali)
{
eval("var oForm=document."+formName);
var e = oForm.elements;
var valueTemp = "";
for(var i=0;i valueTemp = valueTemp != "" ? valueTemp + "&":"";
valueTemp = valueTemp + e.name + "=" + e.value;
}

if(vali){
if(CheckForm(formName)){
return valueTemp;
}else{
return "";
}
}else{
return valueTemp;
}
}

/*
* 检查表单填写是否合法
* @ formName string 表单名
*/
function CheckForm(formName){
eval("var oForm=document."+formName);
var eles = oForm.elements;

for(var i=0;i //是否需要验证
var sType=eles.vt;
var str=new String(eles.value);
if (!chksafe(str)){
alert("您输入的"+convertNullToSpace(eles.on)+"包含非法字符");
eles.focus();
return false;
}

if(sType){
if(eles.r!=null && eles.r=="true" ){
if(trim(eles.value)=="" && sType!="select"){
if(eles.on!=null){
alert(eles.on+"不可以为空");
}else{
alert("该文本框为必输字段");
}
eles.focus();
event.returnValue=false;return false;
}
}

if (!(eles.r!="true" && trim(eles.value)==""))

switch(sType){
//整数
case "int":
if(!validInt(eles)){
event.returnValue=false;
return false;
}
break;
//小数
case "float":
if(!validFloat(eles)){
event.returnValue=false;
return false;
}
break;
//字符串
case "string":
if(!validString(eles)){
event.returnValue=false;
return false;
}
break;
//数字编号
case "nuidck":
if(!nuidck(eles)){
event.returnValue=false;
return false;
}
break;
case "checkid":
if(!checkid(eles)){
event.returnValue=false;
return false;
}
break;
//检查是否为英文字符
case "estring":
if(!valideString(eles)){
event.returnValue=false;
return false;
}
break;
//检查是否为中文字符
case "cstring":
if(!validcString(eles)){
event.returnValue=false;
return false;
}
break;

//日期
case "date":
if(!validDate(eles)){
event.returnValue=false;
return false;
}
break;
//邮件
case "email":
if(!validEmail(eles)){
event.returnValue=false;
return false;
}
break;
//单选按钮
case "radio":
if(!validRadio(eles.name)){
event.returnValue=false;
return false;
}
break;
//复选按钮
case "checkbox":
// alert(eles.name);
if(!validBox(eles.name)){
event.returnValue=false;
return false;
}
break;
//下拉列表框
case "select":
if(!validSelect(eles)){
event.returnValue=false;
return false;
}
break;
//列表框
case "list":
if(!validList(eles)){
event.returnValue=false;
return false;
}
break;
//比较
case "compare":
if (!validCompare(eles)){
event.returnValue=false;
return false;
}
break;
//执行一段代码
case "code":
var code = eles.c.replace("this",eles);
eval(code);

}//end swith
}
}
event.returnValue=true;
return true;
}
/***验证是否为整数***/
function validInt(ele){
if(!isInt(ele.value)){
alert("请输入有效整数");
ele.focus();
return false;
}else{
if(ele.max!=null && !isNaN(ele.max))
if(parseInt(ele.max) alert("您输入的 "+ convertNullToSpace(ele.on)+" 值应该小于"+ele.max);
ele.focus();
return false;
}
if(ele.min!=null && !isNaN(ele.min))
if(parseInt(ele.min)>parseInt(ele.value)){
alert("您输入的 "+ convertNullToSpace(ele.on)+" 值应该大于"+ele.min);
ele.focus();
return false;
}
}
return true;
}
/***判断是否为整数***/
function isInt(s){
var patrn=/^0|^[1-9]\d*/;
if (!patrn.exec(s)){
return false;
}else{
return true;
}
}
/***验证是否为小数***/
function validFloat(ele){
if(isNaN(ele.value)){
alert("金额中请输入有效数字");
ele.focus();
return false;
}else{
if(ele.decimalLen!=null && !checkDecimal(ele.value,ele.decimalLen)){
alert("您输入的 "+convertNullToSpace(ele.on)+" 值小数位最多为"+ele.decimalLen+"个小数位");
ele.focus();
return false;
}
if(ele.max!=null && !isNaN(ele.max))
if(parseInt(ele.max) alert("您输入的 "+ convertNullToSpace(ele.on)+" 值应该小于"+ele.max);
ele.focus();
return false;
}
if(ele.min!=null && !isNaN(ele.min))
if(parseInt(ele.min)>parseInt(ele.value)){
alert("您输入的 "+ convertNullToSpace(ele.on)+" 值应该大于"+ele.min);
ele.focus();
return false;
}
}
return true;
}

/***验证是否为字符串***/
function validString(ele){
//最小长度
if(ele.mil!=null && !isNaN(ele.mil)){
var value=new String(ele.value);
if(value.replace(/[^\x00-\xff]/g,"**").length alert("您输入的 "+convertNullToSpace(ele.on)+" 字数最小长度为"+ele.mil);
ele.focus();
return false;
}
}
//最大长度
if(ele.mal!=null && !isNaN(ele.mal)){
var value=new String(ele.value);
if(value.replace(/[^\x00-\xff]/g,"**").length>parseInt(ele.mal)){
alert("您输入的 "+convertNullToSpace(ele.on)+" 字数最大长度为"+ele.mal);
ele.focus();
return false;
}
}
return true;
}

/***验证是否为英文字符串***/
function valideString(ele){
var str=new String(ele.value);
if (str.replace(/[^\x00-\xff]/g,"**").length!=str.length){
alert("您输入的 "+convertNullToSpace(ele.on)+" 中包含双字节字符");
ele.focus();
return false;
}

//最小长度
if(ele.mil!=null && !isNaN(ele.mil)){
var value=new String(ele.value);
if(value.length alert("您输入的 "+convertNullToSpace(ele.on)+" 字数最小长度为"+ele.mil);
ele.focus();
return false;
}
}
//最大长度
if(ele.mal!=null && !isNaN(ele.mal)){
var value=new String(ele.value);
if(value.length>parseInt(ele.mal)){
alert("您输入的 "+convertNullToSpace(ele.on)+" 字数最大长度为"+ele.mal);
ele.focus();
return false;
}
}
return true;
}


/***验证身份证号码***/
function checkid(ele){
var sID = new String(ele.value);

if(!(/^\d{15}$|^\d{18}$|^\d{17}x$/.test(sID))){
alert("您输入正确的 "+convertNullToSpace(ele.on));
ele.focus();
return false;
}
return true;
}


/***验证数字编号***********/
function nuidck(ele){
var str=new String(ele.value);
var cmp="0123456789-";
//是乎为字符
for (var i=0;i if (cmp.indexOf(str.substring(i,i+1))<0){
alert("您输入的 "+convertNullToSpace(ele.on)+" 非法字符");
ele.focus();
return false;
}
}
//最小长度
if(ele.mil!=null && !isNaN(ele.mil) && str.length alert("您输入的 "+convertNullToSpace(ele.on)+" 字数最小长度为"+ele.mil);
ele.focus();
return false;
}
//最大长度
if(ele.mal!=null && !isNaN(ele.mal) && str.length>parseInt(ele.mal)){
alert("您输入的 "+convertNullToSpace(ele.on)+" 字数最大长度为"+ele.mal);
ele.focus();
return false;
}
return true;
}



/***验证是否为中文字符串***/
function validcString(ele){
var str=new String(ele.value);
if (str.replace(/[^\x00-\xff]/g,"**").length!=str.length*2){
alert("您输入的 "+convertNullToSpace(ele.on)+" 中包含单字节字符");
ele.focus();
return false;
}
//最小长度
if(ele.mil!=null && !isNaN(ele.mil)){
var value=new String(ele.value);
if(value.length alert("您输入的 "+convertNullToSpace(ele.on)+" 字数最小长度为"+ele.mil);
ele.focus();
return false;
}
}
//最大长度
if(ele.mal!=null && !isNaN(ele.mal)){
var value=new String(ele.value);
if(value.length>parseInt(ele.mal)){
alert("您输入的 "+convertNullToSpace(ele.on)+" 字数最大长度为"+ele.mal);
ele.focus();
return false;
}
}
return true;
}
/***验证是否为日期格式***/
function validDate(ele)
{
if(!isDate(ele.value)&&ele.value!=""){
alert("请输入有效日期(yyyy-mm-dd)");
ele.focus();
return false;
}
return true;
}
/***判断是否为日期***/
function isDate(str)
{
var r = str.match(/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})/);
if(r==null)return false;

var d= new Date(r[1], r[3]-1, r[4]);
if(!(d.getFullYear()==r[1]&&(d.getMonth()+1)==r[3]&&d.getDate()==r[4])){
return false;
}
return true;
}
/***验证是否为电子邮箱***/
function validEmail(ele){
if(!isEmail(ele.value)){
alert("请输入有效邮箱");
ele.focus();
return false;
}
return true;
}
/***判断是否为邮箱***/
function isEmail(Email){
var e = /^[^@ ]+@([a-zA-Z0-9-]+.)+([a-zA-Z0-9-]{2}|net|com|gov|mil|org|edu|int)/gim;
if(Email.search(e)==-1)
return false;
else
return true;
}
/***验证单选按钮是否需要选择***/
function validRadio(eleName)
{
var ele = document.getElementsByName(eleName);
//eval("var rads="+name+"."+ele.name);
var selectCount=0;
for(var i=0;i {
if(ele.checked)selectCount++;
}

if(ele[0].r!=null){
if(selectCount==0){
alert("请选择"+convertNullToSpace(ele[0].on));
ele[0].focus();
return false;
}
}
return true;
}
/***验证复选按钮是否需要选择***/
function validBox(eleName){
var ele = document.getElementsByName(eleName); //add by eyes
//alert(ele[2].mis);
//alert("ele length:"+ele.length);
// eval("var chks="+name+"."+ele.name);
var selectCount=0;
for(var i=0;i {
if(ele.checked)selectCount++;
}

if(ele[0].mis!=null && !isNaN(ele[0].mis)){//注意这里用ele[0],而不是ele.minsel
//alert("有mis");
if(selectCount alert(convertNullToSpace(ele.on)+"至少选择"+ele[0].mis+"项");
ele[0].focus();
return false;
}
}
if(ele[0].mas!=null && !isNaN(ele[0].mas))
{
if(selectCount>parseInt(ele[0].mas)){
alert(convertNullToSpace(ele[0].on)+"至多选择"+ele[0].mas+"项");
ele[0].focus();
return false;
}
}
return true;
}
/***验证下拉列表框是否需要选择***/
function validSelect(ele){
//var rads = document.getElementsByName(ele.name);
if(ele.r!=null && ele.r){
if(ele.selectedIndex==0){
alert("请选择"+convertNullToSpace(ele.on));
ele.focus();
return false;
}
}
return true;
}




/***验证列表框的选择项数***/
function validList(ele)
{
//var rads = document.getElementsByName(ele.name);
var selectCount=0;
for(var i=0;i if(ele.options.selected)selectCount++;
}

if(ele.mis!=null && !isNaN(ele.mis)){
if(selectCount alert(convertNullToSpace(ele.on)+"至少选择"+ele.mis+"项");
ele.focus();
return false;
}
}
if(ele.mas!=null && !isNaN(ele.mas)){
if(selectCount>parseInt(ele.mas)){
alert(convertNullToSpace(ele.on)+"至多选择"+ele.mas+"项");
ele.focus();
return false;
}
}
return true;
}
/***将NULL转化为空格,用于显示对象名称***/
function convertNullToSpace(paramValue){
if(paramValue==null)
return "";
else
return paramValue;
}
/***检查小数位数***/
function checkDecimal(num,decimalLen){
var len = decimalLen*1+1;
if(num.indexOf('.')>0){
num=num.substr(num.indexOf('.')+1,num.length-1);
if ((num.length) return true;
}else{
return false;
}
}
return true;
}
/***去除空格***/
function trim(str){
if (str.length > 0){
while ((str.substring(0,1) == " ") && (str.length > 0)){
str = str.substring(1,str.length);
}
while (str.substring(str.length-1,str.length) == " "){
str = str.substring(0,str.length-1);
}
}
return str;
}

///////////////////////add by eyes/////////////////////
//比较
function validCompare(ele){
var to = document.getElementsByName(ele.to);
if (ele.value!=to[0].value){
alert("两次"+to[0].on+"不一样");
ele.focus();
return false;
}
return true;
}

//检测是是否包含安全字符串
function chksafe(a)
{
fibdn = new Array ("'" ,";");
i=fibdn.length;
j=a.length;
for (ii=0;ii for (jj=0;jj valueTemp1=a.charAt(jj);
valueTemp2=fibdn[ii];
if (valueTemp1==valueTemp2) return false;
}
}
return true;
}

提问者:失忆今生   08-22 15:03
答复
路过。。。顺便帮顶:)
回答者:玉米づ冰冻可乐 - 瓦岗村民 8-22 09:10
我也来回答:
不管你有没有帮助我们,瓦岗寨8万村民将感谢你。。。。。

为防止灌水,您需要计算一道数学题: 答案:
26 + 11 = ? 请将计算结果填在上面

 
[]
©2007 PhpRes.COM