• DWZ(JUI)的lookupGroup增加回调函数


    DWZ 是一个很好的富客户端框架

    lookupGroup也是一个必用到的东东,但没有回调函数,后期处理相当的不便。

    修改其dwz.database.js

    增加几行,就能实行一个很好的回调。

    使用就方便了,

    如:

    源代码

    <input type="hidden" value="H2" name="roleid" id="roleid">

    <input type="hidden" value="H2" name="roleid.id" id="roleid_id">

    <input type="text" name="roleid.Name" readonly="" class="input input-large required textInput readonly" value="CEO">

    <a width="400" lookupgroup="roleid" warn="请选择部门" href="index.php?........." callback="roleid_callback" class="btnLook">选择部门</a>

    <script language="javascript">

    function roleid_callback()

    {

        jQuery("#roleid").val(jQuery("#roleid_id").val());

    }

    </script>

    修改的代码如下

    源代码

    (function($){

        var _lookup = {currentGroup:"", suffix:"", $target:null, pk:"id",callback:null};

        var _util = {

            _lookupPrefix: function(key){

                var strDot = _lookup.currentGroup ? "." : "";

                return _lookup.currentGroup + strDot + key + _lookup.suffix;

            },

            lookupPk: function(key){

                return this._lookupPrefix(key);

            },

            lookupField: function(key){

                return this.lookupPk(key);

            }

        };

        $.extend({

            bringBackSuggest: function(args){

                var $box = _lookup['$target'].parents(".unitBox:first");

                $box.find(":input").each(function(){

                    var $input = $(this), inputName = $input.attr("name");

                    for (var key in args) {

                        var name = (_lookup.pk == key) ? _util.lookupPk(key) : _util.lookupField(key);

                        if (name == inputName) {

                            $input.val(args[key]);

                            break;

                        }

                    }

                });

                var callback = _lookup['callback'];     

                try

                {

                    eval_r(callback+"();");

                }

                catch (e){}

            },

            bringBack: function(args){

                $.bringBackSuggest(args);

                $.pdialog.closeCurrent();

            }

        });

        $.fn.extend({

            lookup: function(){

                return this.each(function(){

                    var $this = $(this), options = {mask:true,

                        $this.attr('width')||820, height:$this.attr('height')||400,

                        maxable:eval_r($this.attr("maxable") || "true"),

                        resizable:eval_r($this.attr("resizable") || "true")

                    };

                    $this.click(function(event){

                        _lookup = $.extend(_lookup, {

                            currentGroup: $this.attr("lookupGroup") || "",

                            callback: $this.attr("callback"), 

                            suffix: $this.attr("suffix") || "",

                            $target: $this,

                            pk: $this.attr("lookupPk") || "id"

                        });

                        Var   url    = ($this.attr("href")).replaceTmById($(event.target).parents(".unitBox:first"));

                        if (!url.isFinishedTm()) {

                            alertMsg.error($this.attr("warn") || DWZ.msg("alertSelectMsg"));

                            return false;

                        }

                        $.pdialog.open(url, "_blank", $this.attr("title") || $this.text(), options);

                        return false;

                    });

                });

            },

       

    })(jQuery);

    如果您觉得文章有用,也可以给水发个微信小额红包鼓励鼓励!!!

  • 相关阅读:
    centos 7.5搭建oracle DG
    oracle 11g修改归档日志目录及大小
    oracle修改数据文件路径
    oracle 11g调优常用语句
    MySQL MHA安装配置
    mysql中的数据库操作
    mysql 中用户与权限的操作
    percona server安装
    mysql配置文件相关
    条件判断中的真假
  • 原文地址:https://www.cnblogs.com/soundcode/p/5520236.html
Copyright © 2020-2023  润新知