• (转)jqGrid自定义列的样式


    本文转载自:http://blog.csdn.net/gaofang2009/article/details/5870451

    1、自定义的为一个超链接样式

    2、点击链接时,会执行指定的方法,而不是跳转到某页面

    3、点击编辑时,是原始的数据格式,而不是重新定义的样式

    作法,扩展formatter的值

     /*扩展自定义格式*/
                jQuery.extend($.fn.fmatter, {
                    userLinkFmatter: function (cellvalue, options, rowdata) {
                        var op = { onclick: options.onclick };
                        var onclick = "";
                        if (!isUndefined(options.colModel.formatoptions)) {
                            op = $.extend({}, op, options.colModel.formatoptions);
                        }
                        if (op.onclick) { onclick = 'onclick="' + op.onclick + '(/'' + cellvalue + '/',/'' + rowdata + '/')"'; }
                        if (!isEmpty(cellvalue)) {
                            return "<a href='javascript:' " + onclick + ">" + cellvalue + "</a>";
                        } else {
                            return $.fn.fmatter.defaultFormat(cellvalue, options);
                        }
                    }
                });
    	   /*去掉自定义的样式,返回的是原始的数据格式*/
                jQuery.extend($.fn.fmatter.userLinkFmatter, {
                    unformat: function (cellvalue, options) {
                        var valNum = cellvalue.toString().indexOf(">");
                        if (valNum >= 0) {
                            var html = cellvalue.substring(valNum + 1);
                            valNum = html.toString().indexOf("<");
                            html = html.substring(0, valNum);
                            return html;
                        }
                        else {
                            return cellvalue;
                        }
                    }
                
    调用示例:
    colModel: [
               { name: 'UnitName', index: 'UnitName', align: "center", editable: true,
    editrules: { required: true }, formatter: 'userLinkFmatter'
                 formatoptions: { onclick: "formatUnit" }
    },
    formatUnit为一个自己写的js方法示例:
     function formatUnit(cellvalue, rowdata) {
    //自已的事件代码
    alert(cellvalue);
    }
    效果如下:

    编辑时,是原始的数据格式:
  • 相关阅读:
    过滤评论中的表情
    谈谈你对多进程,多线程,以及协程的理解
    什么是多线程竞争?
    解释以下什么是锁,有哪几种锁?
    .什么是死锁
    多线程交互访问数据,如果访问到了就不访问了?
    什么是线程安全,什么是互斥锁
    说说下面几个概念:同步,异步,阻塞,非阻塞?
    什么是僵尸进程和孤儿进程?怎么避免僵尸进程?
    python中进程与线程的使用场景
  • 原文地址:https://www.cnblogs.com/wpcnblog/p/2288031.html
Copyright © 2020-2023  润新知