| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251 |
- this.vtip = function() {
- this.xOffset = -10; // x distance from mouse
- this.yOffset = 10; // y distance from mouse
- $('input[required=true]').unbind().hover(
- function(e) {
- this.t = this.title;
- this.title = '';
- this.top = (e.pageY + yOffset); this.left = (e.pageX + xOffset);
- $('body').append( '<p id="vtip"><img id="vtipArrow" />' + this.t + '</p>' );
- $('p#vtip #vtipArrow').attr("src", '../images/vtip_arrow.png');
- $('p#vtip').css("top", this.top+"px").css("left", this.left+"px").fadeIn("slow");
- },
- function() {
- this.title = this.t;
- $("p#vtip").fadeOut("slow").remove();
- }
- ).mousemove(
- function(e) {
- this.top = (e.pageY + yOffset);
- this.left = (e.pageX + xOffset);
- $("p#vtip").css("top", this.top+"px").css("left", this.left+"px");
- }
- );
-
- };
- /*
- @author f1jee
- @date 2010-05-04
- 功能 : 元素输入检测绑定
- */
- $(function(){
- //vtip();
- $('input[required=true]').each(function(){
- $id=$(this).attr("id");
- //alert($(this).attr("test1"));
- $(this).bind('change',function(){
- valid($(this).attr("id"));
- });
- $(this).bind('click',function(){
- valid($(this).attr("id"));
- });
- $(this).bind('keyup',function(){
- valid($(this).attr("id"));
- });
- });
-
- });
- /*
- @author f1jee
- @date 2010-05-04
- 功能 :检测输入元素数据格式
- @parm:id-输入元素id
- @return:检测成功返回true,否则返回false
- */
- function valid(id){
- value=$("#"+id).val();
- title=$("#"+id).attr("title");
- validType=$("#"+id).attr("validType");
- if (validType=="digit") {validType="1"};
- if (validType=="date") {validType="2"};
- if (validType=="mail") {validType="3"};
- if (validType=="zipCode") {validType="4"};
- if (validType=="notNull") {validType="5"};
- if (validType=="mobile") {validType="7"};
- if (validType=="phone") {validType="6"};
- if (validType=="string6-20") {validType="8"};
- if (validType.indexOf("length")!=-1) {validType="9"};
- return checkItem(title,id,validType,"1");
- }
- var errInfo="";
- /*
- @author f1jee
- @date 2010-05-04
- 功能 :表单提交的时候执行,自动查找表单属性required=true的项目并检测
- @return:检测成功返回true,否则返回false
- */
- validForm = function() {
- errInfo="";
- var count = 0;
- $('input[required=true]').each(function(){
- $id=$(this).attr("id");
- if (!valid($(this).attr("id"))){count++;}
- });
- if (count > 0) {
- return false;
- } else {
- return true;
- }
- }
- /*
- @author f1jee
- @date 2010-05-04
- 功能 :表单提交的时候执行,自动查找表单属性required=true的项目并检测
- @parm:arg-项目json数组
- [{title:"生 日",id:'birthday',format:'2',type:'text',errinfo:""}, ...]
- title--------------输入项目标题
- id-----------------输入项目id
- format-------------输入项目格式
- type---------------输入项目类型
- errinfo------------错误提示的显示位置
- @return:检测成功返回true,否则返回false
- */
- checkForm = function(arg) {
- errInfo="";
- var count = 0;
- //
- for ( var i = 0; i < arg.length; i++) {
- title=arg[i].title;
- id_ = arg[i].id;
- format_ = arg[i].format;
- type_ = arg[i].type;
- errinfo = arg[i].errinfo;
- if (!checkItem(title,id_, format_, type_))
- count++;
- }
- if (count > 0) {
- return false;
- } else {
- return true;
- }
- }
- /*
- @author f1jee
- @date 2010-05-04
- 功能 :检测输入元素数据格式
- @parm:id-id,title-标题,dataType-输入格式,type-类型
- @return:检测成功返回true,否则返回false
- */
- function checkItem(title,id, dataType, type) {
- type = "text";
- var result = true;
- value = "";
- var $o = $("#" + id);
- value = $("#" + id).val();
- switch (Number(dataType)) {
- case 1:
- if (!ChkUtil.isDigit(value)) {
- result = false;
- error(id, $errInfo.digit);
- errInfo+="<li><label for='"+id+"'>"+title+$errInfo.digit+"</label></li>";
- } else {
- sucess(id);
- }
- break;
- case 2:
- if (!ChkUtil.isDate(value)) {
- result = false;
- error(id, $errInfo.date);
- errInfo+="<li>"+title+$errInfo.date+"</li>";
- } else {
- sucess(id);
- }
- break;
- case 3:
- if (!ChkUtil.isEmail(value)) {
- result = false;
- error(id, $errInfo.mail);
- errInfo+="<li>"+title+$errInfo.mail+"</li>";
- } else {
- sucess(id);
- }
- break;
- case 4:
- if (!ChkUtil.isZipCode(value)) {
- result = false;
- error(id, $errInfo.zipCode);
- errInfo+="<li>"+title+$errInfo.zipCode+"</li>";
- } else {
- sucess(id);
- }
- break;
- case 5:
- if (ChkUtil.isNull(value)) {
- result = false;
- error(id, $errInfo.notNull);
- errInfo+="<li>"+title+$errInfo.notNull+"</li>";
- } else {
- sucess(id);
- }
- break;
- case 6:
- if (!ChkUtil.isMobile(value)) {
- result = false;
- error(id, $errInfo.mobile);
- errInfo+="<li>"+title+$errInfo.mobile+"</li>";
- } else {
- sucess(id);
- }
- break;
- case 7:
- if (!ChkUtil.isPhone(value)) {
- result = false;
- error(id, $errInfo.phone);
- errInfo+="<li>"+title+$errInfo.phone+"</li>";
- } else {
- sucess(id);
- }
- break;
- case 8:
- if (!ChkUtil.isString6_20(value)) {
- result = false;
- error(id, "长度为6-20");
- errInfo+="<li>"+title+":长度为6-20"+"</li>";
- } else {
- sucess(id);
- }
- break;
- case 9:
- validType=$("#"+id).attr("validType");
- start=validType.substring(validType.indexOf("[")+1,validType.indexOf(","));
- end=validType.substring(validType.indexOf(",")+1,validType.lastIndexOf("]"));
- if (!ChkUtil.isString(start,end,value)) {
- result = false;
- error(id, "长度为"+start+"-"+end);
- errInfo+="<li>"+title+":长度为6-20"+"</li>";
- } else {
- sucess(id);
- }
- break;
- default:
- }
- return result;
- }
- function error(id, info) {
- var $o = $("#" + id);
- $o.attr("class","input-err");
- $o.next().remove();
- $o.after($("<em class='error'>" + info + "</em>"));
- }
- function sucess(id) {
- var $o = $("#" + id);
- $o.attr("class","");
- //alert(id);
- $o.next().remove();
- $o.after($("<em class='success'> </em>"));
- }
- function showDiv(divId, o) {
- if (document.getElementById(divId).style.display == 'none') {
- document.getElementById(divId).style.display = 'block';
- o.className = 'panel-title-fold panel-title';
- } else {
- document.getElementById(divId).style.display = 'none';
- o.className = 'panel-title-expand panel-title';
- }
- }
|