首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > Web前端 >

td归拢

2012-12-31 
td合并(function($) {JxglUtil {/*** getDbChar方法** 一个中文字所占数据库字符个数* (1)utf-8:3个字节

td合并

(function($) {    JxglUtil = {    /**     * getDbChar方法     *      * 一个中文字所占数据库字符个数     * (1)utf-8:3个字节     * (2)其他字符集:2个字节     */getDbReplaceChar:function(){       return "***";},    /**     * format方法     * usage: format("hello {0} ","king")     */    format:function(source, params) {                        if (arguments.length == 1) return source;                        if (arguments.length > 2 && params.constructor != Array) {                params = jQuery.makeArray(arguments).slice(1);            }            if (params.constructor != Array) {                params = [params];            }            jQuery.each(params, function(i, n) {                source = source.replace(new RegExp("\\{" + i + "\\}", "g"), n);            });                                return source;    },    /**     * 判断是否在数组中存在     * @array:js数组     * @value:要判断是否存在的值     */    contains:function(array, value) {         for (i = 0; i < array.length; i++)        if (array[i] == value)            return true;        return false;    },    /**     * 去除重复数据的数组     * @param a 数组      */    uniqueDataArray:function(a) {        var temp = new Array();        for (var i = 0; i < a.length; i++) {            if (!this.contains(temp, a[i])) {                temp.length += 1;                temp[temp.length - 1] = a[i];            }        }        return temp;    },    /**     * 字符串的字节长度     * @param string 字符串     */    byteLength:function(string) {        //return string.replace(/[^x00-xff]/g,"**").length;    return string.replace(/[^x00-xff]/g, JxglUtil.getDbReplaceChar()).length;    },    /**     * 判断是否是数组     * @param {} o     * @return {}     */    isArray:function(obj) {          return Object.prototype.toString.call(obj) === '[object Array]';       },    /**     * td合并     */    tdMerge:function(prefix) {        var array = new Array();                var tds = this.format("td[class^='{0}']",prefix);                jQuery(tds).each(function(i) { // 被考评对象td            array[i] = jQuery(this).attr('class');        });            array = this.uniqueDataArray(array); // 去除重复                for (var i = 0; i < array.length; i++) {            jQuery("td[class='" + array[i] + "']").each(function(index) { // 被考评对象td                if (index == 0) {                    jQuery(this).attr('rowSpan', jQuery("td[class='" + array[i] + "']").length);                } else {                    jQuery(this).remove();                }            });        }    },    /**     * 清空field的值     */    clearFieldData:function(arrayIds) {        if(this.isArray(arrayIds)) {            for(var i=0;i<arrayIds.length;i++) {                 $('#'+arrayIds[i]).val('');            }        } else {            $('#'+arrayIds).val('');        }    },    /**     * 判断是否为空     */    isEmpty:function(fieldId,message,focus) {        var val = jQuery.trim(jQuery('#'+fieldId).val());        if(val==''){            if(jQuery.trim(message)!='')alert(message);            jQuery('#'+fieldId).focus();//            if(focus!=undefined && focus) jQuery('#'+fieldId).focus();            return true;        } else {            return false;        }    },    /**     * 判断大于最大字符     */    isThanMaxLenth:function(fieldId,message,maxlength) {        var val = jQuery.trim(jQuery('#'+fieldId).val());        if(this.byteLength(val)>maxlength){            if(jQuery.trim(message)!='')alert(message);            jQuery('#'+fieldId).focus();            return true;        } else {            return false;        }    },        /**     * 绑定只能输入正负数字的text框     * @param name: text name     * @param maxlength: text maxlength     */    bindInputFloatOnlyEvent:function(name,maxlength) {        if(maxlength==undefined)maxlength=10;        var con = this.format("[name^='{0}']",[name]);        jQuery(con).attr('maxlength',maxlength).bind("keypress",function() {DomUtil.inputFloatOnly();})        .bind("paste",function() {DomUtil.pasteFloatOnly();});    },        /**     * 绑定日期控件YYYY-MM-DD,YYYY-MM,YYYY     */    bindWdatePicker:function(ids,dateFormat) {        if(this.isArray(ids)) {            for(var i=0;i<ids.length;i++) {                             this.bindWdatePickerPrivate('#'+ids[i],dateFormat);            }        } else {            this.bindWdatePickerPrivate('#'+ids,dateFormat);        }    },        /**     * 绑定日期控件根据ID     */    bindWdatePickerById:function(ids,dateFormat) {        this.bindWdatePicker(ids,dateFormat);    },        /**     * 绑定日期控件根据名称     */    bindWdatePickerByName:function(names,dateFormat) {        if(this.isArray(names)) {            for(var i=0;i<names.length;i++) {                 this.bindWdatePickerPrivate('[name='+names[i]+']',dateFormat);            }        } else {            this.bindWdatePickerPrivate('[name='+names+']',dateFormat);        }    },        bindWdatePickerPrivate:function(condition,dateFormat) {    if(undefined==dateFormat){    jQuery(condition).attr('readonly','readonly').addClass('Wdate').bind('click',function(){                WdatePicker({dateFmt:'yyyy-MM-dd',skin:'whyGreen'});            });    }else{    jQuery(condition).attr('readonly','readonly').addClass('Wdate').bind('click',function(){                WdatePicker({dateFmt:dateFormat,skin:'whyGreen'});            });    }    },        /**     * 针对期间的初始化状态;绑定事件和赋值,和前后时间范围不能超出     * startdateId 开始时间id     * enddateId 结束时间id     * startdateValue 开始时间赋值     * enddateValue 结束时间赋值     * dateFormat 日期格式     * isShowClear 显示清空     */    initWdatePicker:function(startdateId,enddateId,startdateValue,enddateValue,dateFormat,isShowClear){    if(undefined==dateFormat){    dateFormat = 'yyyy-MM-dd';    }    if(undefined==isShowClear){    isShowClear = false;    }        $j("#"+startdateId).click(function(){            WdatePicker({                maxDate: '#F{$dp.$D(\''+enddateId+'\')}',                dateFmt: dateFormat,                isShowClear: isShowClear,                skin:'whyGreen'            });        }).addClass('Wdate').val(startdateValue).attr('readonly','readonly');        $j("#"+enddateId).click(function(){            WdatePicker({                minDate: '#F{$dp.$D(\''+startdateId+'\')}',                dateFmt: dateFormat,                isShowClear: isShowClear,                skin:'whyGreen'            });        }).addClass('Wdate').val(enddateValue).attr('readonly','readonly');    },        /**     * 限制输入     */    initWdatePickerValueLimit:function(objectName, limitValue, showClear){        jQuery('[name='+objectName+']').click(function(){            WdatePicker({                maxDate: limitValue,                dateFmt: 'yyyy-MM-dd',                isShowClear: showClear,                skin:'whyGreen'            });        }).addClass('Wdate').attr('readonly','readonly');    },        /**     * 给需要验证的元素绑定验证时用到的属性     * 主要是caption和class属性     *      * @param {Object} CheckObjArr 绑定对象的数组     * @return 可返回绑定过的对象id数组     */    bindValidateAttribute:function(CheckObjArr){        var ids = new Array();        if(this.isArray(CheckObjArr)){        for(var i=0; i<CheckObjArr.length; i++){        jQuery("#"+CheckObjArr[i].id).attr("caption",CheckObjArr[i].caption);        jQuery("#"+CheckObjArr[i].id).addClass(CheckObjArr[i].clazz);        ids.push(CheckObjArr[i].id);        }        }else{    jQuery("#"+CheckObjArr.id).attr("caption",CheckObjArr.caption);    jQuery("#"+CheckObjArr.id).addClass(CheckObjArr.clazz);    ids.push(CheckObjArr.id);        }        return ids;    },        /**     * 给需要验证的元素使用name属性来绑定验证时用到的属性     * 主要是caption和class属性     *      * @param {Object} CheckObjArr 绑定对象的数组     * @return 可返回绑定过的对象name数组     */    bindValidateAttributeByName:function(CheckObjArr){        var names = new Array();        if(this.isArray(CheckObjArr)){        for(var i=0; i<CheckObjArr.length; i++){                jQuery("[name=" + CheckObjArr[i].name + "]").each(function(){                    jQuery(this).attr("caption",CheckObjArr[i].caption).addClass(CheckObjArr[i].clazz);                });        names.push(CheckObjArr[i].name);        }        }else{                        jQuery("[name=" + CheckObjArr.name + "]").each(function(){                    jQuery(this).attr("caption",CheckObjArr.caption).addClass(CheckObjArr.clazz);            });    names.push(CheckObjArr.name);        }        return names;    },        /**     * 转义JSon值     *      * @param originalValue 原始值      * @return 转义后的值     */    transferJSonValue:function(originalValue){           if(originalValue == null || originalValue==undefined || originalValue==""){               return "";           }           return encodeURIComponent(originalValue.replace(new RegExp('([""])', 'g'),"\\""));    }}})(jQuery)/** * 待校验的对象,用于构造进行校验属性设定的值 *  * @param pId 对象的ID * @param pCaption 对象的名称 * @param pClass  * @param pName 元素的name属性 */CheckObj = function(pId,pCaption,pClass,pName){    this.id = pId;    this.caption = pCaption;    this.clazz = pClass;    this.name = pName;};

?

? js调用:??????? JxglUtil.tdMerge('swjg');

?

? html:<td href="javascript:doQuery()" class="list_textlink">11</a></td>

热点排行