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,

width:$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);

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

DWZ(JUI)的lookupGroup增加回调函数的更多相关文章

  1. dwz框架---(2)表单回调函数

    dwz中的表单回调函数大概有下面几种: /** * 普通ajax表单提交 * @param {Object} form * @param {Object} callback * @param {Str ...

  2. JS---封装缓动(变速)动画函数---增加任意多个属性&增加回调函数

    封装缓动(变速)动画函数---增加任意多个属性&增加回调函数 回掉函数fn,在所有元素到达目的位置后,判断是否传入一个函数,有就调用 if(fn){fn()}; 这样一次点击,产生多个动画 & ...

  3. JS---最终版本--封装缓动(变速)动画函数---增加任意多个属性&回调函数&层级&透明度

    封装缓动(变速)动画函数---增加任意多个属性&回调函数&层级&透明度 相较之前的,增加了2个判断,第一个判断是不是透明度,第二个判断是不是zindex, 都不是,就只是普通属 ...

  4. DWZ (JUI) 教程 tree 控件的选中事件

    DWZ (JUI) 教程 tree 控件的选中事件 先简单说一下流程 第一步 当然是先定义好回调事件了 function checkCallback(json){ ........... ...... ...

  5. Dwz(J-UI)框架--入门

    http://www.cnblogs.com/chenyongsai/p/4933982.html Dwz(J-UI)框架--入门 一.了解 概述:是中国人自己开发的基于jQuery实现的Ajax R ...

  6. 理解和使用 JavaScript 中的回调函数

    理解和使用 JavaScript 中的回调函数 标签: 回调函数指针js 2014-11-25 01:20 11506人阅读 评论(4) 收藏 举报  分类: JavaScript(4)    目录( ...

  7. [Effective JavaScript 笔记]第67条:绝不要同步地调用异步的回调函数

    设想有downloadAsync函数的一种变种,它持有一个缓存(实现为一个Dict)来避免多次下载同一个文件.在文件已经被缓存的情况下,立即调用回调函数是最优选择. var cache=new Dic ...

  8. DWZ (JUI) 教程 navTab 刷新分析

    navTab的刷新在doc文件里也有说明 首先 在form表单里指定好回调函数 * <form action="/user.do?method=save" onsubmit= ...

  9. C# (事件触发)回调函数,完美处理各类疑难杂症!

    每次写博客,第一句话都是这样的:程序员很苦逼,除了会写程序,还得会写博客! 废话说多了...... 嘿嘿:本篇标题为:C#  (事件触发)回调函数,完美处理各类疑难杂症.个人理解如下:事件触发也就是触 ...

随机推荐

  1. 【原】log4cplus使用说明

    网上关于开源日志工具log4cplus的说明有很多,但大多略显复杂,本文主要从实用的角度,介绍一种最简单而且又实用的方法.本文的方法已经足够满足实际工程中的使用需求,而且不需要很复杂的流程,可以实现. ...

  2. oc语言常用的字符串函数

    #import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { @autoreleasepool { ...

  3. 多线程基础(三)NSThread基础

    3.多线程基础 NSThread的基本使用   如何使用NSThread创建新线程 创建线程之后是默认不执行的状态 创建三个线程:   通过name属性区别这些线程 接下来就是通过设置线程的优先级来设 ...

  4. java网络---再论URL & URI

    关于URL 和URI的关系,在本系列的第二篇:java网络---基本web概念 中已经简述了. 这里重复一点,就是URI包含URL,或者说URI是父类,URL就是子类的概念. 本篇再来详述这2个概念. ...

  5. 敏捷软件开发:原则、模式与实践——第14章 使用UML

    第14章 使用UML 在探索UML的细节之前,我们应该先讲讲何时以及为何使用它.UML的误用和滥用已经对软件项目造成了太多的危害. 14.1 为什么建模 建模就是为了弄清楚某些东西是否可行.当模型比要 ...

  6. 敏捷软件开发:原则、模式与实践——第12章 ISP:接口隔离原则

    第12章 ISP:接口隔离原则 不应该强迫客户程序依赖并未使用的方法. 这个原则用来处理“胖”接口所存在的缺点.如果类的接口不是内敛的,就表示该类具有“胖”接口.换句话说,类的“胖”接口可以分解成多组 ...

  7. log4net资料收集

    Log4net 日志使用介绍 http://www.cnblogs.com/jys509/p/4699813.html log4net Tutorial http://www.codeproject. ...

  8. poj邮局1160

    题目是给出V个村庄,取出P个做为邮局,要求每个村庄到邮局的距离和最小. 先考虑只有一个邮局的情况,不管你怎么放邮局和最小的情况总是在中点的位置. 再来考虑P>1的情况: 假设P-1个邮局已经选好 ...

  9. (Ios 实战) 自定义UITableView

    自定义UITableView 分成两个部分 1 自定义UITableViewCell 继承UITableViewCell,同时提供接口,根据当前的数据,现实View 2  在UITableView中实 ...

  10. 问题解决——multimap中统计key的种类

    ================声明================= 本文原创,转载请注明出处和作者,并保持文章的完整性. 本文链接:http://www.cnblogs.com/wlsandwho ...