javaScript通用数据类型校验函数(7)
来源:asp之家 发布时间:2009-07-06 12:49:00
判断当前对象及其父对象是否可见
function checkPrVis(obj){
var pr=obj.parentNode;
do{
if(pr == undefined || pr == "undefined") return true;
else{
if(!isVisible(pr)) return false;
}
}while(pr=pr.parentNode);
return true;
}
弹出警告对话框,用户点确定后将光标置于出错文本框上, 并且将原来输入内容选中。
function f_alert(obj,alertInfo)
{
var caption = obj.getAttribute("eos_displayname");
if(caption == null)
caption = "";
alert(caption + ":" + alertInfo + "!");
obj.select();
if(isVisible(obj) && checkPrVis(obj))
obj.focus();
}
检测字符串是否为空
function isnull(str)
{
var i;
if(str.length == 0)
return true;
for (i=0;i<str.length;i++)
{
if (str.charAt(i)!=' ')
return false;
}
return true;
}
检测指定文本框输入是否合法。
* 如果用户输入的内容有错,则弹出提示对话框,
* 同时将焦点置于该文本框上,并且该文本框前面
* 会出现一个警告图标(输入正确后会自动去掉)。
function checkInput(object)
{
var image;
var i;
var length;
if(object.eos_maxsize + "" != "undefined") length = object.eos_maxsize;
else length = 0;
if (object.eos_isnull=="true" && isnull(object.value)) return true;
/* 长度校验 */
if(length != 0 && strlen(object.value) > parseInt(length)) {
f_alert(object, "超出最大长度" + length);
return false;
}
/* 数据类型校验 */
else {
if (object.eos_datatype + "" != "undefined")
{
var dtype = object.eos_datatype;
var objName = object.name;
//如果类型名后面带有括号,则视括号前面的字符串为校验类型
if(dtype.indexOf("(") != -1)
dtype = dtype.substring(0,dtype.indexOf("("));
//根据页面元素的校验类型进行校验
try{
if(eval("f_check_" + dtype + "(object)") != true)
return false;
}catch(e){return true;}
/* 如果form中存在name前半部分相同,并且同时存在以"min"和"max"结尾的表单域,
那么视为按区间查询。即"min"结尾的表单域的值要小于等于"max"结尾的表单域的值。 */
if(objName.substring((objName.length-3),objName.length)=="min")
{
var objMaxName = objName.substring(0, (objName.length-3)) + "max";
if(document.getElementById(objMaxName) != undefined && document.getElementById(objMaxName) != "undefined" )
{
&n, bsp; if(checkIntervalObjs(object, document.getElementById(objMaxName)) != true)
return false;
}
}
}
}
return true;
}


猜你喜欢
- 看看上一篇《javascript设计模式交流(一)Singleton Pattern》本文将讨论Prototype Pattern的js实现
- 本文实例讲述了Python通过递归遍历出集合中所有元素的方法。分享给大家供大家参考。具体实现方法如下:''''
- 张量范数:torch.norm(input, p=2) → float返回输入张量 input 的 p 范数举个例子:>>>
- 安装完成后需要在系统环境变量中设置GOPATH为项目目录GOROOT为安装目录path中设置好安装目录到bin目录打开cmd,输入go en
- 前言最近使用pytorch训练模型,保存模型后再次加载使用出现了一些问题。记录一下解决方案!一、torch中模型保存和加载的方式1、模型参数
- 网站的改版和重新设计总是一件让人激动的事情,上到老板,下到设计师。更漂亮!更强大!更人性化……参与设计者一定有着无数为新版本骄傲的理由,然后
- Python 风格规范(Google)本项目并非 Google 官方项目, 而是由国内程序员凭热情创建和维护。如果你关注的是 Google
- 我们先来看一个题目:<script> console.log(typeof a)//undefined var a='l
- 目录列表拼接三种方式方式一:简简单单的“+”方法二:切片赋值方式三:列表自带的extend()列表去重的三种方式利用集合set的特性利用字典
- 最近在接触一个Django项目,使用的是fbv( function-base views )模式,看起来特别不舒服,项目中有一个模型类117
- 先要明白Fscanf的工作原理Fscanf在遇到\n才结束遇到\r时就会把\r替换成0这就有个问题,要注意自己的文本换行符是什么,在Wind
- 表结构:CREATE TABLE `instance` ( `id` int(11) unsigned NOT NULL AUTO_INCR
- 1. 需求分析我们要把我们的表单组件分成两个部分,一个是item部分,一个是整体的 form 部分,form部分由item和button提交
- 首先,"/"左倾斜是正斜杠,"\"右倾斜是反斜杠,可以记为:除号是正斜杠一般来说对于目录分隔符,Un
- 反射简介Go语言的反射是通过reflect包提供的,它允许我们在运行时访问接口的动态类型信息和值。其基本的操作包括获取一个类型的Kind(例
- get方法代码实现# coding:utf-8import jsonfrom urlparse import parse_qsfrom ws
- #!/usr/bin/python# -*- coding: utf-8 -*-from scapy.all import *from ti
- python实现的五子棋,能够自动判断输赢,没有是实现电脑对战功能源码下载:pygame五子棋# 1、引入pygame 和 pygame.l
- 什么是协程在 Python 中,协程(Coroutine)是一种轻量级的并发编程方式,可以通过协作式多任务来实现高效的并发执行。协程是一种特
- 去年中秋开始,小编一直在忙旅游公司的30多个网站,在网站项目中,网站客服需要在网站中添加某个客服交谈工具代码,还需要对PC和手机添加不一样的