对DWZ的查找带回与某些框架的冲突解决

一、简述

DWZ是一个国内开源前端UI框架,主要方便做OA项目时进行相应的排版和控件的调取,非常感谢DWZ三个人为大家提供的方便。
DWZ中有一个非常方便的功能叫做查找带回,lookup,通过点击按钮弹出选择框,选择相应信息并带回至之前的界面,但是这个属性有一个问题就是name属性,使用lookup的name属性必须是group.name的格式,这样的话如果后端用了一些MVC的框架就会与后端数据库对象的获取产生冲突,我们项目中用的是ASP.NET MVC,据说SSH也会出现这个问题,所以对DWZ源文件进行了相应修改,取消了对name属性的绑架。

二、修改查找带回

1、修改全局name绑定,3643行

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

2、修改th标签,增加新增属性,3836行

bringbackname: $th.attr("bringbackname") || "",

3、修改th标签,给bringbackname属性增加修改顺序功能,3903行

`var bname = $this.attr('bringbackname');
if (bname) $this.attr('bringbackname', bname.replaceSuffix(i));`

4、修改th标签,给lookup标签做相应的修改,3930行

case 'lookup':
var suggestFrag = '';
if (field.suggestFields) {
  suggestFrag = 'autocomplete="off" lookupGroup="' + field.lookupGroup + '"' + suffixFrag + ' suggestUrl="' + field.suggestUrl + '" suggestFields="' + field.suggestFields + '"' + ' postField="' + field.postField + '"';
}
html = '<input type="hidden" name="' + field.lookupGroup + '.' + field.lookupPk + suffix + '"/>' + '<input type="text" name="' + field.name + '"' + 'bringbackname="' + field.bringbackname + '"' + suggestFrag + ' lookupPk="' + field.lookupPk + '" size="' + field.size + '" class="' + field.fieldClass + '"/>' + '<a class="btnLook" href="' + field.lookupUrl + '" lookupGroup="' + field.lookupGroup + '" ' + suggestFrag + ' lookupPk="' + field.lookupPk + '" title="查找带回">查找带回</a>';
break;

三、给th标签增加click事件

1、增加myclick属性,3835行

myclick: $th.attr("myclick") || "",

2、增加myclick的case,生成标签,3969行

case 'myclick':
html = '<input type="text" name="' + field.name + '" value="' + field.defaultVal + '" size="' + field.size + '" class="' + field.fieldClass + '" ' + attrFrag + ' onclick="' + field.myclick + '" />';
break;

四、给th标签增加hidden属性

1、增加生产标签的case,3965行

case 'hidden':
html = '<input type="hidden" name="' + field.name + '" value="' + field.defaultVal + '" size="' + field.size + '" class="' + field.fieldClass + '" ' + attrFrag + '/>';
return '<td style="display:none;">' + html + '</td>';
break;

五、总结

相应的修改暂时修改这么多,如果有新的修改再来这里更新。


景初
730 声望30 粉丝

前端 / 数据挖掘 / CCIE / 炉石


引用和评论

0 条评论