Full Code of dwzteam/dwz_jui for AI

master 80c46ad111e9 cached
173 files
1.4 MB
448.0k tokens
270 symbols
1 requests
Download .txt
Showing preview only (1,529K chars total). Download the full file or copy to clipboard to get everything.
Repository: dwzteam/dwz_jui
Branch: master
Commit: 80c46ad111e9
Files: 173
Total size: 1.4 MB

Directory structure:
gitextract_ohlqek00/

├── .gitignore
├── LICENSE.txt
├── README.md
├── bin/
│   ├── ESC.wsf
│   ├── gzjs-esc.bat
│   ├── gzjs.sh
│   └── yuicompressor-2.4.8.jar
├── changepwd.html
├── chart/
│   └── test/
│       ├── barchart.html
│       ├── hbarchart.html
│       ├── linechart.html
│       ├── linechart2.html
│       └── piechart.html
├── demo/
│   ├── baidu_map.html
│   ├── baidu_map_iframe.html
│   ├── combox/
│   │   ├── city_all.html
│   │   ├── city_bj.html
│   │   └── city_sh.html
│   ├── common/
│   │   ├── ajaxDone.json
│   │   ├── ajaxDone_loadPage_error.json
│   │   ├── ajaxDone_w_list.json
│   │   ├── ajaxTimeout.json
│   │   └── dwz-team.xls
│   ├── database/
│   │   ├── db_attachmentBrightBack.html
│   │   ├── db_attachmentLookup.html
│   │   ├── db_lookupSuggest.html
│   │   ├── db_select.html
│   │   ├── db_widget.html
│   │   ├── dwzOrgLookup.html
│   │   ├── dwzOrgLookup2.html
│   │   ├── treeBringBack.html
│   │   └── treeLookup.html
│   ├── pagination/
│   │   ├── ajaxDone1.html
│   │   ├── ajaxDone2.html
│   │   ├── ajaxDone3.html
│   │   ├── dialog1.html
│   │   ├── dialog2.html
│   │   ├── layout1.html
│   │   ├── layout2.html
│   │   ├── list1.html
│   │   ├── list2.html
│   │   └── list3.html
│   ├── row-col.html
│   └── sortDrag/
│       ├── 1.html
│       ├── 2.html
│       └── form.html
├── demo_page1.html
├── demo_page2.html
├── demo_page4.html
├── demo_page5.html
├── demo_page6.html
├── demo_upload.html
├── doc/
│   ├── dwz-user-guide.docx
│   └── git.txt
├── donation.html
├── dwz.frag.xml
├── index.html
├── index_menu.html
├── js/
│   ├── dwz.accordion.js
│   ├── dwz.ajax.js
│   ├── dwz.alertMsg.js
│   ├── dwz.barDrag.js
│   ├── dwz.checkbox.js
│   ├── dwz.combox.js
│   ├── dwz.contextmenu.js
│   ├── dwz.core.js
│   ├── dwz.cssTable.js
│   ├── dwz.database.js
│   ├── dwz.datepicker.js
│   ├── dwz.dialog.js
│   ├── dwz.dialogDrag.js
│   ├── dwz.drag.js
│   ├── dwz.effects.js
│   ├── dwz.file.js
│   ├── dwz.history.js
│   ├── dwz.miscDrag.js
│   ├── dwz.navTab.js
│   ├── dwz.pagination.js
│   ├── dwz.panel.js
│   ├── dwz.print.js
│   ├── dwz.regional.zh.js
│   ├── dwz.resize.js
│   ├── dwz.scrollCenter.js
│   ├── dwz.selectedLoad.js
│   ├── dwz.sortDrag.js
│   ├── dwz.stable.js
│   ├── dwz.switchEnv.js
│   ├── dwz.tab.js
│   ├── dwz.taskBar.js
│   ├── dwz.theme.js
│   ├── dwz.tree.js
│   ├── dwz.ui.js
│   ├── dwz.util.date.js
│   ├── dwz.util.number.js
│   ├── dwz.validate.method.js
│   ├── jquery-1.12.4.js
│   ├── jquery-3.4.1.js
│   ├── jquery.bgiframe.js
│   ├── jquery.cookie.js
│   ├── jquery.easing.1.3.js
│   ├── jquery.validate.js
│   └── speedup.js
├── login.html
├── login_dialog.html
├── main.html
├── miscDrag.html
├── miscDrag2.html
├── miscDragScreen1.html
├── newPage1.html
├── newPage2.html
├── newPage3.html
├── sidebar_1.html
├── sidebar_2.html
├── tabsPage.html
├── test_print.html
├── themes/
│   ├── azure/
│   │   └── style.css
│   ├── css/
│   │   ├── core.css
│   │   ├── ieHack.css
│   │   ├── login.css
│   │   └── print.css
│   ├── default/
│   │   └── style.css
│   ├── green/
│   │   └── style.css
│   ├── miscDrag/
│   │   └── screen.css
│   ├── purple/
│   │   └── style.css
│   └── silver/
│       └── style.css
├── uploadify/
│   ├── Change Log.txt
│   ├── css/
│   │   └── uploadify.css
│   └── scripts/
│       ├── jquery.uploadify.js
│       └── uploadify.swf
├── validate_remote.html
├── w_accordion.html
├── w_alert.html
├── w_button.html
├── w_checkbox.html
├── w_combox.html
├── w_datepicker.html
├── w_dialog.html
├── w_editor.html
├── w_html5_upload.html
├── w_list.html
├── w_panel.html
├── w_removeSelected.html
├── w_tabs.html
├── w_textInput.html
├── w_tree.html
├── w_uploadify.html
├── w_validation.html
├── window_open.html
└── xheditor/
    ├── xheditor_emot/
    │   ├── default/
    │   │   └── config.txt
    │   ├── ipb/
    │   │   └── config.txt
    │   └── pidgin/
    │       └── config.txt
    ├── xheditor_lang/
    │   ├── en.js
    │   ├── zh-cn.js
    │   └── zh-tw.js
    ├── xheditor_plugins/
    │   ├── html2markdown.js
    │   ├── htmldomparser.js
    │   ├── multiupload/
    │   │   ├── multiupload.css
    │   │   ├── multiupload.html
    │   │   ├── multiupload.js
    │   │   └── swfupload/
    │   │       ├── swfupload.js
    │   │       └── swfupload.swf
    │   ├── showdown.js
    │   └── ubb.js
    └── xheditor_skin/
        ├── default/
        │   ├── iframe.css
        │   └── ui.css
        ├── nostyle/
        │   ├── iframe.css
        │   └── ui.css
        ├── o2007blue/
        │   ├── iframe.css
        │   └── ui.css
        ├── o2007silver/
        │   ├── iframe.css
        │   └── ui.css
        └── vista/
            ├── iframe.css
            └── ui.css

================================================
FILE CONTENTS
================================================

================================================
FILE: .gitignore
================================================
.idea


================================================
FILE: LICENSE.txt
================================================

jUI遵循Apache2开源协议发布,并提供免费使用。
版权所有Copyright © 2009-2020 by DWZ (http://j-ui.com) All rights reserved。
jUI® 商标和著作权所有者为DWZ团队。

Apache Licence是著名的非盈利开源组织Apache采用的协议。
该协议和BSD类似,鼓励代码共享和尊重原作者的著作权,允许代码修改,再作为开源或商业软件发布。需要满足的条件:
1. 需要给代码的用户一份Apache Licence ;
2. 如果你修改了代码,需要在被修改的文件中说明;
3. 在延伸的代码中(修改和有源代码衍生的代码中)需要带有原来代码中的协议,商标,专利声明和其他原来作者规定需要包含的说明;
4. 如果再发布的产品中包含一个Notice文件,则在Notice文
件中需要带有本协议内容。你可以在Notice中增加自己的许可,但不可以表现为对Apache Licence构成更改。
具体的协议参考:http://www.apache.org/licenses/LICENSE-2.0

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.


================================================
FILE: README.md
================================================
> ## 介绍

github源码下载:https://github.com/dwzteam/dwz_jui

DWZ富客户端框架(jQuery RIA framework), 是中国人自己开发的基于jQuery实现的Ajax RIA开源框架.

DWZ富客户端框架设计目标是<b>简单实用、扩展方便、快速开发、RIA思路、轻量级</b>

DWZ支持用html扩展的方式来代替javascript代码, 基本可以保证程序员不懂javascript, 也能使用各种页面组件和ajax技术. 如果有特定需求也可以扩展DWZ做定制化开化.

国内很多程序员javascript不熟, 大大影响了开发速度. 使用DWZ框架自动邦定javascript效果. 不需要开发人员去关心javascript怎么写, 只要写标准html就可以了. DWZ简单扩展了html标准, 给HTML定义了一些特别的class 和attribute. DWZ框架会找到当前请求结果中的那些特别的class 和attribute, 并自动关联上相应的js处理事件和效果.

DWZ基于jQuery可以非常方便的定制特定需求的UI组件, 并以jQuery插件的形式发布.

欢迎大家提出建议, 我们将在下一版本中进一步调整和完善功能。

DWZ富客户端框架完全开源,可以免费获取全部源码。团队中的每个人都是开源的拥护者,都希望为中国软件开源事业尽自己的一份力量。

DWZ官方微博 http://weibo.com/dwzui
在线演示地址 http://jui.org

### 学习DWZ的建议
- 通读DWZ文档,很多新手提的问题文档中都写了
- 看demo每个组件演示效果和代码(留意组件html结构)
- 建议安装firebug,用firebug看html结构、CSS和调试JS都非常方便。见附录一 firebug介绍
- 对于初学者不建议看DWZ全部源码,但还是非常有必要看看dwz.ui.js和dwz.ajax.js
- 可以从google code下载dwz_thinkphp版本,结合php后台去理解DWZ和服务器端的交互方式

### DWZ区别于其它JS框架,最大的优点

- 完全开源,源码没有做任何混淆处理,方便扩展
- CSS和js代码彻底分离,修改样式方便
- 简单实用,扩展方便,轻量级框架,快速开发
- 仍然保留了html的页面布局方式
- 支持HTML扩展方式调用UI组件,开发人员不需写js
- 只要懂html语法不需精通js,就可以使用ajax开发后台
- 基于jQuery,UI组件以jQuery插件的形式发布,扩展方便

### 有偿服务
- 公司培训,技术支持,解决使用jUI过程中出现的全部疑难问题
- 定制化开发

### 联系方式

	合作电话:18600055221
	技术支持:17767167745
	邮箱:support@jui.org

	DWZ创始人:
	[北京]杜权(UI设计/制作)	d@jui.org
	[杭州]吴平(Ajax开发)	w@jui.org
	[杭州]张慧华(Ajax开发)	z@jui.org

	新加入成员:
	[北京]张涛	QQ:122794105
	[北京]冀刚	QQ:63502308	jiweigang2008@tom.com
	[南京]郑应海	QQ:55691650
	[成都]COCO	QQ:80095667

	官方微博(欢迎加入) http://weibo.com/dwzui 

	jQuery.DWZ-jUI-1群 369203
	jQuery.DWZ-jUI-2群 69611933
	jQuery.DWZ-jUI-3群 20866231
	jQuery.DWZ-jUI-5群 85031937
	jQuery.DWZ-jUI-6群 172602882
	jQuery.DWZ-jUI-7群 210322217
	jQuery.DWZ-jUI-8群 139067378
	jQuery.DWZ-jUI-9群 59680552
	jQuery.DWZ-jUI-10群 329597326

### 技术服务微信
![](./themes/default/images/wx_zhh.jpg?width=200)

> ## DWZ 移动端框架

- 在线演示版,使用chrome 开发模式设置手机版:`http://mobile.jui.org`
- git源码:`https://gitee.com/dwzteam/dwz_mobile_app`
- 在线文档:`http://dwzteam.gitee.io/dwz_mobile_doc_v1`
- 安卓 Apk 安装测试版:`http://mobile.jui.org/apk/dwz_mobile_app.apk`

![](./doc/dwz_mobile_app.jpg)

## 捐助

如果您觉得我们的开源软件对你有所帮助,请扫下方二维码打赏我们一杯咖啡。

|支付宝|微信|
|:---:|:---:|
|![](./themes/default/images/zfb.png?width=200)|![](./themes/default/images/wx.png?width=200)|

<b>版权声明:</b>

	jUI遵循Apache2开源协议发布,并提供免费使用。
	版权所有Copyright © 2009-2020 by DWZ (http://jui.org) All rights reserved。
	Apache Licence是著名的非盈利开源组织Apache采用的协议。
	该协议和BSD类似,鼓励代码共享和尊重原作者的著作权,允许代码修改,再作为开源或商业软件发布。需要满足的条件: 
	
	需要给代码的用户一份Apache Licence
	如果你修改了代码,需要在被修改的文件中说明
	在延伸的代码中(修改和有源代码衍生的代码中)需要带有原来代码中的协议,商标,专利声明和其他原来作者规定需要包含的说明
	如果再发布的产品中包含一个Notice文件,则在Notice文
	件中需要带有本协议内容。你可以在Notice中增加自己的许可,但不可以表现为对Apache Licence构成更改
	
具体的协议参考:http://www.apache.org/licenses/LICENSE-2.0

	THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOTLIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESSFOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THECOPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVERCAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICTLIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING INANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THEPOSSIBILITY OF SUCH DAMAGE.
	


================================================
FILE: bin/ESC.wsf
================================================
<?xml version="1.0"?>
<!-- Generated by Soya.IO.WSFFactory v0.95 [Tue, 28 Feb 2006 21:22:15 UTC] -->
<package>
<job>
<?job error="false" debug="false" ?>
<resource id="about">
-----------------------------------------------------------------------------
  ESC (ECMAScript Cruncher)
  * Version       : 1.14
  * Date          : 2006-02-28 22:22:15 [+0100]
  * License       : GNU GPL 2 (http://www.gnu.org/copyleft/gpl.txt)
  * Copyright (C) 2001-2006 Thomas Loo &lt;tloo@saltstorm.net&gt;

  ---------------------------------------------------------------------------
  ESC is an ECMAScript(*) pre-processor enabling an unlimited number of
  external scripts to be compressed/crunched into tight, bandwidth-optimized
  packages. ESC supports compressing of external sources only. Trying to
  process scripts inlined in HTML, ASP, PHP or equivalent pages are NOT
  recommended with this version of ESC. This feature might be added in a
  future version. Type "cscript ESC.wsf -help" for usage instructions.

  ESC is built using components from the Soya Scripting API 1.0.0-b10,
  a uni-host/cross-browser ECMAScript compliant class-library distributed
  freely under the terms of the BSD License. The Soya Scripting API,
  'lib-soya' and the Soya SDK can be found at http://www.saltstorm.net/
  ---------------------------------------------------------------------------
  * ECMAScript is the international standard for javascript.
-----------------------------------------------------------------------------
</resource>

<resource id="copyright">
-----------------------------------------------------------------------------

  This program is free software; you can redistribute it and/or
  modify it under the terms of the GNU General Public License
  version 2 as published by the Free Software Foundation.

  This program is distributed in the hope that it will be useful,
  but WITHOUT ANY WARRANTY; without even the implied warranty of
  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  GNU General Public License for more details.

  You should have received a copy of the GNU General Public License
  along with this program; if not, write to the Free Software
  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA

-----------------------------------------------------------------------------

</resource>

<resource id="usage">
------------------------------------------------------------------------------
 Usage: cscript ESC.wsf -l [0-4] -ow output.js foo.js bar.js C:\scripts\baz...
 -----------------------------------------------------------------------------
  -a  [-about]             : Description page
  -c  [-copyright]         : Copyright/license notice
  -e  [-example]           : Examples of usage
  -h  [-help]              : This help-screen
 -----------------------------------------------------------------------------
  -l  [-level]   [01(2)34] : [optional] Set crunch-level (4 sets -$ on)
  -s  [-silent]            : [optional] Run silent, nada stdout
  -v  [-verbose]           : [optional] Run in verbose mode
  -$                       : [optional] Activate variable-substitution engine
 -----------------------------------------------------------------------------
  -oa &lt;filename&gt;           : Target filename for appending
  -ow &lt;filename&gt;           : Target filename for writing
  -ow STDOUT               : Write stream to STDOUT
 -----------------------------------------------------------------------------
 &lt;input-file(s)&gt;           : [required]
  file(s) and/or directories containing scripts to crunch...
  (paths containing spaces must be quoted)
</resource>

<resource id="example">
-----------------------------------------------------------------------------
 Examples of usage.

  Crunch 'original1.js','original2.js' and 'original3.js' at
  level 2 (default) and save the output as 'crunched.js'.
  Any previous file named 'crunched.js' will be overwritten.
   X:\cscript ESC.wsf -ow crunched.js original1.js original2.js original3.js
  ---------------------------------------------------------------------------

  Grab all scriptfiles (.js) in directory 'C:\script-directory' and crunch
  them at level 1 (comment and empty line removal only) and append the result
  to 'crunched.js'. If 'crunched.js' doesn't exist, it will be created.
   X:\cscript ESC.wsf -l 1 -oa crunched.js C:\script-directory
  ---------------------------------------------------------------------------

  Subject 'original1.js' and 'original2.js' for variable substitution,
  but perform no comment or whitespace removal.
  Redirect output to STDOUT instead of writing to file.
   X:\cscript ESC.wsf -l 0 -$ -ow STDOUT original1.js original2.js
  ---------------------------------------------------------------------------

  Crunch 'original.js' using variable substitution and remove
  any occurance of whitespace (where permitted...)
  and save it as 'crunched.js' (equals -l 3 -$)
   X:\cscript ESC.wsf -l 4 -ow crunched.js original.js
  ---------------------------------------------------------------------------

 Try 'ESC.wsf -help' for information about available run-time directives.
-----------------------------------------------------------------------------
</resource>

<resource id="wscript">
ESC must be run from a DOS command prompt under	
cscript.exe. Do you want to switch host and have
ESC bring up a helpscreen ?

</resource>

<resource id="jscript">
ESC needs JScript 5.5 or higher to score...
You need to update your version of JScript to run ESC.
Read the 'Requirements' section in the manual for information
how to obtain and install the latest version of Microsofts
'Windows Script' package.

</resource>

<resource id="common.map">

Anchor
ActiveXObject
Call
Closure
Components
Dictionary
Document
DOMParser
Embed
EvalError
Event
Form
Global
HttpCookie
Image
JavaArray
JavaClass
JavaMethod
JavaObject
JavaPackage
Layer
MimeType
MimeTypeArray
Option
Url
Packages
Plugin
PluginArray
Popup
RangeError
ReferenceError
TypeError
StyleClass
StyleSelector
SyntaxError
TypeError
WScript
URIError
XMLHttpRequest
XMLSerializer
XPathEvaluator
XSLTDocument
XSLTProcessor
Attr
CDATASection
CharacterData
Comment
CSS2Properties
DOMException
DOMImplementation
DocumentType
Element
EntityReference
EvalError
NamedNodeMap
Node
NodeList
Notation
ProcessingInstruction
Text
HTMLElement
HTMLDocument
HTMLCollection
HTMLHtmlElement
HTMLHeadElement
HTMLLinkElement
HTMLTitleElement
HTMLMetaElement
HTMLBaseElement
HTMLIsIndexElement
HTMLStyleElement
HTMLBodyElement
HTMLFormElement
HTMLSelectElement
HTMLOptGroupElement
HTMLOptionElement
HTMLInputElement
HTMLTextAreaElement
HTMLButtonElement
HTMLLabelElement
HTMLFieldSetElement
HTMLLegendElement
HTMLUListElement
HTMLOListElement 
HTMLDListElement
HTMLDirectoryElement
HTMLMenuElement
HTMLLIElement
HTMLBlockquoteElement 
HTMLDivElement
HTMLParagraphElement
HTMLHeadingElement
HTMLQuoteElement
HTMLPreElement
HTMLBRElement
HTMLBaseFontElement 
HTMLFontElement
HTMLHRElement
HTMLModElement 
HTMLAnchorElement
HTMLImageElement
HTMLObjectElement
HTMLParamElement
HTMLAppletElement
HTMLMapElement
HTMLAreaElement
HTMLScriptElement
HTMLTableElement
HTMLTableCaptionElement
HTMLTableColElement
HTMLTableSectionElement
HTMLTableRowElement
HTMLTableCellElement
HTMLFrameSetElement
HTMLFrameElement
HTMLIFrameElement
_newEnum
alert
atob
attachEvent
back
btoa
captureEvents
clearTimeout
clearInterval
close
CollectGarbage
confirm
createEventObject 
createPopup
decodeURI
decodeURIComponent
detachEvent
dump
encodeURI
encodeURIComponent
escape
eval
execScript
find
forward
frameElement
getAttention
GetAttention
getClass
getComputedStyle
getResource
GetObject
home
isFinite
isNaN
moveBy
moveTo
open
openDialog
parseInt
parseFloat
print
prompt
releaseEvents
resizeBy
resizeTo
ScriptEngine
ScriptEngineMajorVersion
ScriptEngineMinorVersion
ScriptEngineBuildVersion    
scroll
scrollBy
scrollByLines
scrollByPages
scrollIntoView
scrollTo
setCursor
setInterval
setTimeout
showHelp
showModalDialog
showModelessDialog
sizeToContent
stop
taint
toString
updateCommands
unescape
untaint
valueOf
_content
appCore
arguments
arity
callee
caller
clientInformation
clipboardData
closed
constructor
controllers
crypto
debug
defaultStatus
directories
document
element
event
external
history
forward
frames
Infinity
innerHeight
innerWidth
java
length
loading
location
locationbar
name
menubar
navigator
netscape
offscreenBuffering
opener
opera
outerHeight
outerWidth
pageXOffset
pageYOffset
parent
personalbar
pkcs11
prompter
prototype
returnValue
screen
screenLeft
screenTop
screenX
screenY
scrollX
scrollY
scrollbars
self
sidebar
status
statusbar
style
sun
title
toolbar
top
window
onafterprint
onbeforeprint
onbeforeunload
onblur
onchange
onclick
onclose
onerror
onfocus
onhelp
onload
onresize
onreset
onscroll
onselect
onunload
onmousedown
onmouseup
onmouseover
onmouseout
onkeydown
onkeyup
onkeypress
onmousemove
onsubmit
onreset
onchange
onselect
onclose
onabort
onerror
onpaint
ondragdrop
Soya
BOOTSTRAP
</resource>

<resource id="core.map">

abstract
break
continue
const
class
catch
case
debugger
default
double
delete
do
enum
extends
else
function
finally
float
false
for
get
instanceof
implements
import
int
in
if
long
null
new
protected
private
package
public
return
switch
static
super
set
typeof
throw
true
this
try
undefined
void
var
while
with
getter
setter
__defineGetter__
__defineSetter__
end
elif 
cc_on 
_win32
_win16
_mac
_alpha
_x86
_mc680x0
_PowerPC
_jscript
_jscript_build
_jscript_version
Array
Boolean
Date
Enumerator
Error
Function
Math
Number
Object
RegExp
String
VBArray

</resource>

<script language="JScript">
<![CDATA[
/*** <POD [ESCtool] (Soya/1.0.0-b10; crlvl:2/1; Tue, 28 Feb 2006 21:22:16 UTC)> ***/
/**
Proving that ESC actually can handle name-mangling and as a general self-sanity
 check, ESC has been used to compress itself along with other required Soya-beans
 while creating the package you see below. To examine these beans in a more human
 readable form, get the latest distribution of the Soya API.
**/
function Soya_API($h)
{
this.name='Soya';
this.version='1.0.0-b10';
this.type='static';
this.debug=0;
this.host=$h;
this.libPath='/lib-soya/';
this.podPath='pods';
this.resourcePath='resources';
this.attachBean=$a;
this.declareBean=$b;
this.registerBean=$c;
this.BeanPrototype=Soya_BeanPrototype;
this.beans=new Object();
this.beans.all=new Array();
Soya_Loader.prototype=new this.BeanPrototype();
this.Loader=new Object();
this.Loader.orphans=new Array();
this.Loader.callbacks=new Object();
this.declareBean('Soya.BeanPrototype',null,this.name,false,true);
}
function Soya_VirtualBean(){}
function Soya_BeanPrototype(){
this.name='Soya.BeanPrototype';
}
function $a($i){
if(!$i.virtual){
eval($i.mutexName).prototype=$i;
eval($i.name+'='+(!$i.constructable?'new ':' ')+
$i.mutexName+(!$i.constructable?'()':''));
}
else eval($i.name+'=this.beans["'+$i.name+'"]');
$i.complete=true;
if(this.Loader&&this.Loader.callbacks[$i.name])
this.Loader.callbacks[$i.name](eval($i.name));
}
function $b($j,$k,$l,$m,$n){
var $o=$k?new this.BeanPrototype():new Soya_VirtualBean();
$o.name=$j;
$o.mutexName=$k||'Soya_VirtualBean';
$o.parentName=$l;
$o.iid=0;
$o.stack=new Array();
$o.complete=Boolean($n);
$o.constructable=($k&&!$m);
$o.virtual=!$k;
return(this.beans[$j]=this.beans.all[this.beans.all.length]=$o);
}
function $c($j,$m,$p,i){
var $q;
var $r=$j.split('\x2e');
var $k=$r.join('\x5f');
if(!this.beans[$j]){
if($p){
var $s='';
$q=$r[0];
for(i=1;i<$r.length-1;i++){
$s+=$q;
$q+=('\x2e'+$r[i]);
if(i<=$p&&!this.beans[$q])
this.attachBean(this.declareBean($q,null,$s,true,true));
}
}
$r.length-=$p?$p:1;
$q=$r.join('\x2e');
this.declareBean($j,$k,$q,$m);
if($r.length>1&&!this.beans[$q])
this.Loader.orphans[this.Loader.orphans.length]=this.beans[$j];
else{
this.attachBean(this.beans[$j]);
var $t=new Array();
for(i=0;i<this.Loader.orphans.length;i++)
if(this.Loader.orphans[i].parentName==$j)
this.attachBean(this.Loader.orphans[i]);
else $t[$t.length]=this.Loader.orphans[i];
this.Loader.orphans=$t;
}
}
return Boolean(i)
}
function $d($u){
this.getResourcePath=Function('sName',
"return(Soya.libPath + Soya.resourcePath + '/' + (sName||this.name).split('.').join('/') + '/')");
this.getClass=Function('sName','return eval(Soya.beans[sName || this.name].mutexName)');
this.toString=Function("return('[object ' + (this.name || 'noname') + ']')");
this.getBeanPath=Function('sName',
"return(Soya.libPath + (sName||this.name).split('.').join('/') + '.js')");
this.type='static';
if(!$u){
this.finalize=$f;
this.initialize=$e;
}
}
function $e($v){
this.iid=this.getClass().prototype.iid++;
if(this.stackable)
this.stack[this.iid]=this;
if(!Soya.beans[this.name].initialized){
$v=$v||
Soya.host[Soya.beans[this.name].mutexName+'_initialize'];
if(typeof($v)=='function')
Soya.beans[this.name].initialized=!$v(this.getClass(),this);
}
}
function $f($w){
$w=$w||
Soya.host[Soya.beans[this.name].mutexName+'_finalize'];
if(typeof($w)=='function')
$w(this.getClass(),this);
}
function Soya_Loader(){};
function $g($x,$y,$z){
if(!Soya.fso)
Soya.fso=new ActiveXObject('Scripting.FilesystemObject');
if(Soya.fso.FileExists($x)){
var $i=Soya.fso.GetFile($x),
$A=Soya.fso.OpenTextFile($i.Path),
$B=$A.Read($z||$i.Size);
$A.Close();
return $B;
}
else if(!$y)
return(WScript.Echo(this.name+' '+Soya.version+
'> File Not found: '+$x),WScript.Quit(99));
else return '';
}
Soya_BeanPrototype.prototype=new $d(0);
Soya_VirtualBean.prototype=new $d(1);
Soya_API.prototype=new $d(1);
var Soya=new Soya_API(this);
if(typeof(BOOTSTRAP)=='function')BOOTSTRAP(Soya);
function Soya_Common()
{
this.name='Soya.Common';
this.type='static';
this.version='1.03';
this.dependencies=[];
this.destroy=$E;
this.makeFunction=$G;
this.typematch=$F;
this.getObject=$C;
this.$ih=$H;
Function.prototype.getArguments=$D;
Soya.BeanPrototype.prototype.Extends=
Function('oBean','bOvr','Soya.Common.$ih(oBean, this, bOvr)');
Soya.BeanPrototype.prototype.Implements=
Function('oBean','bOvr','Soya.Common.$ih(this, oBean, bOvr)');
this.interfaces=new Object();
this.interfaces['Scripting.FilesystemObject']=Soya.fso;
}
function $C($I,$J){
if(typeof(this.interfaces[$I])=='undefined'){
if(typeof ActiveXObject=='function'){
Soya.host.msieax=null;
if(typeof Error=='function')
eval('try{Soya.host.msieax=new ActiveXObject("'+$I+'")}catch(e){}');
else{
var $K=String("on error resume next\nself.msieax=CreateObject('"+$I+"'))");
self.execScript($K,'vbscript');
}
if(!$J)
return Soya.host.msieax;
this.interfaces[$I]=Soya.host.msieax;
}
}
return this.interfaces[$I]||void(0);
}
function $D($L){
var $M=[],
$N=(isNaN($L)||$L<1)?
0:Math.min($L,this.arguments.length);
for(;$N<this.arguments.length;$N++)
$M[$M.length]=this.arguments[$N];
return $M;
}
function $E($O){
if($O!=null&&typeof($O)=='object')
for(var $P in $O){
if(typeof($O[$P])=='object'&&$O[$P])
if($O[$P].constructor&&!$O[$P].style){
this.destroy($O[$P]);
delete($O[$P]);
}
else $O[$P]=null;
}
}
function $F($Q,$R){
var $S;
switch(typeof($Q)){
case 'number':$S=2;break;
case 'boolean':$S=4;break;
case 'string':$S=8;break;
case 'function':$S=16;break;
case 'object':$S=32;break;
default:$S=1;break;
}
return Boolean($S&($R||62));
}
function $G($T){
if($T&&this.typematch($T,16))
return $T;
else return Function(($T&&this.typematch($T,8))?$T:'');
}
function $H($U,$V,$W){
for(var $P in $U)
if($P!='name'&&(!$W||typeof($V[$P])=='undefined'))
$V[$P]=$U[$P];
}
if(typeof(Soya)=='object')Soya.registerBean('Soya.Common',true);
function Soya_WSH()
{
this.name='Soya.WSH';
this.type='static';
this.version='0.88';
this.dependencies=['Soya.Common','Soya.WSH.Registry'];
this.osInfo={};
this.arguments={length:0};
this.$09=function($00)
{return $00.length<2?$00:$00.replace(/^\\-/,'-').replace(/\\{2}/g,'\\')};
this.getArgument=function($01){return(this.arguments[$01]||"")}
this.getArguments=$X;
this.getOSInfo=$Z;
this.getShell=$Y;
}
function $X(){
if(!this.arguments.length&&WScript.Arguments.length){
var i,$02,$03=[],$04=new RegExp('^-+');
for(i=0;i<WScript.Arguments.length;i++)
$03[$03.length]=WScript.Arguments.item(i);
for(i=0;i<$03.length;i++){
$02=$03[i].replace($04,'-');
if($02.length>1&&$04.test($02)){
if(typeof $03[i+1]!='undefined'&&!$04.test($03[i+1]))
this.arguments[this.$09($02.replace($04,''))]=
this.$09($03[1+(i++)]);
else this.arguments[this.$09($02.replace($04,''))]=1;
};
else if($02.length)
this.arguments[this.arguments.length++]=this.$09($03[i]);
}
}
return this.arguments;
}
function $Y(){
if(!this.shell)
this.shell=Soya.Common.getObject('WScript.Shell');
return this.shell;
}
function $Z(){
if(this.osInfo.$0a)
return this.osInfo;
var $05=Soya.Common.getObject('Scripting.FilesystemObject'),
$06=this.getShell().ExpandEnvironmentStrings("%SYSTEMROOT%");
this.osInfo.MSIEVersion=Soya.WSH.Registry.regRead('HKLM\\SOFTWARE\\Microsoft\\Internet Explorer\\Version');
this.osInfo.NETVersion=Soya.WSH.Registry.regRead('HKLM\SOFTWARE\Microsoft\.NETFramework\\Version')||-1;
this.osInfo.SPVersion=Soya.WSH.Registry.regRead('HKLM\\SOFTWARE\\Microsoft\\Windows NT\\CSDVersion')||-1;
this.osInfo.JSVersion=parseFloat(ScriptEngineMajorVersion()+'.'+ScriptEngineMinorVersion());
if($05.FolderExists($06+'\\system32'))
$07=$05.GetFileVersion($06+'\\system32\\kernel32.dll');
else if($05.FolderExists($06+'\\system'))
$07=$05.GetFileVersion($06+'\\system\\kernel32.dll');
if($07){
/^(\d)\.(\d+)\.(\d+)\.\d+$/.test($07);
this.osInfo.majorVersion=parseInt(RegExp.$1);
this.osInfo.minorVersion=parseInt(RegExp.$2,10);
this.osInfo.buildVersion=parseInt(RegExp.$3,10);
this.osInfo.version=$07;
var $08={
'4.00.950':'Win95',
'4.00.1111':'Win95 OSR2',
'4.00.1381':'WinNT',
'4.10.1998':'Win98',
'4.10.2222':'Win98SE',
'4.90.3000':'WinME',
'5.0.2195':'Win2K',
'5.10.2600':'WinXP'
};
this.osInfo.name=$08[$07.replace(/\.\d+$/,'')]||'unknown';
}
this.osInfo.$0a=1;
return this.osInfo;
}
if(typeof(Soya)=='object')Soya.registerBean('Soya.WSH',true);
function Soya_Saltstorm_ESC($0t,$0u,$0v,$y)
{
this.name='Soya.Saltstorm.ESC';
this.version='1.14';
this.type='constructor';
this.dependencies=['Soya.Common','Soya.ECMA.Array'];
this.resourcePath=$0v||'';
this.crunchLevel=$0t||2;
this.substitute=false;
this.verbose=$0u;
this.silent=($y||typeof window=='object');
this.initialize();
this.flush();
}
function Soya_Saltstorm_ESC_initialize($0w,$0x){
$0y=$0x;
var $0z="(?:\"{2}|'{2}|\".*?.\"|'.*?.'|\\/(?!\\*|\\/)..*?\\/)";
var $0A="[-!%&;<=>~:\\/\\^\\+\\|\\,\\(\\)\\*\\?\\[\\]\\{\\}]+";
var $0B="\\/\\*(?!@).(?:.|\\n)*?\\*\\/|\\/\\/.*";
var $0C="\".*?.\"|'.*?.'|\\s*\\/{2,}.*\\n";
var $0D="\\}(?!catch|else|while)([^;,\\|\\.\\]\\)\\}])";
with($0w){
prototype.fileFilter=new RegExp('.+\\\\(?!$|_)\\w*\\.js$','i');
prototype.$1r=["0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ",9];
prototype.$1s={};
prototype.fso=Soya.Loader.fso||new ActiveXObject('Scripting.FilesystemObject');
prototype.core={};
prototype.bless={};
prototype.mangle={};
prototype.common={};
prototype.$1t=$g;
prototype.crunch=$0r;
prototype.flush=function(){this.buffer='';this.report=new $0c()};
prototype.getSubstitute=$0g;
prototype.loadMaps=$0d;
prototype.out=$0b;
prototype.load=$0e;
prototype.save=$0f;
prototype.getReport=$0s;
prototype.$1u=new RegExp("[$_]");
prototype.$1v=new RegExp("[^$\\w]","g");
prototype.$1w=new RegExp("^[\\x00\\.\"']");
prototype.$1x=new RegExp("\\s+$");
prototype.$1y=new RegExp("^\\s*\\W");
prototype.$1z=new RegExp("^[-\\\\+\"~'!]");
prototype.$1A=new RegExp("("+$0z+")|("+$0B+")","g");
prototype.$1B=new RegExp("("+$0C+")","g");
prototype.$1C=new RegExp("("+$0z+")|(\\r?\\n\\s+)|(\\x20{2,})","g");
prototype.$1D=new RegExp("("+$0z+")|(\\w+)?\\s+("+$0A+")","g");
prototype.$1E=new RegExp("("+$0z+")|("+$0A+")[ \\t]+","g");
prototype.$1F=new RegExp("("+$0z+")|function[\\n\\s]+([$\\w]+)","g");
prototype.$1G=new RegExp("("+$0z+")|("+$0B+")|(\\W[\\n\\s]*?[$\\w]+)\\b","gm");
prototype.$1H=new RegExp("("+$0z+")|(\\x00)|\\.[\\n\\s]*?([$_][$\\w]{3,})","g");
prototype.$1I=new RegExp("("+$0z+")|(\\S)\\s*[\\r\\n]+\\s*(\\S)","g");
prototype.$1J=new RegExp("[$\\w][$\\w]");
prototype.$1K=new RegExp("("+$0D+")","g");
}
}
function $0b($0E,$0F){
if(!this.silent){
var $0G=String((!$0F?'ESC> ':'')+($0E||''));
WScript.Echo($0G);
}
}
function $0c(){
this.scripts=[];
this.rawSize=
this.crunchedSize=
this.elapsedTime=0;
}
function $0d(){
if(this.$1L)
return;
var $0H,$0I,$0J,$0K,$0L;
for(var i=0;i<arguments.length;i++){
$0H=arguments[i].replace(/\W.+$/,'');
try{
$0J=getResource(arguments[i]).split(/\r?\n/g)||[];
for(var j=0;j<$0J.length;j++)
if($0J[j].length&&!$0y.$1y.test($0J[j]))
Soya_Saltstorm_ESC.prototype[$0H][$0J[j].replace($0y.$1x,'')]=1;
if(this.verbose)
this.out('Parsed map "'+$0H+'", '+$0J.length+' entries.')
}
catch($0M){
if($0M)
$0J=null;
}
if($0J)
continue;
else $0I=this.fso.BuildPath(this.resourcePath,arguments[i]);
if(/^common|core/.test(arguments[i])&&!this.fso.FileExists($0I)){
this.out('Couldn\'t $0N $0O:'+
this.fso.GetAbsolutePathName($0I));
return WScript.Quit(99);
}
else if(typeof this[$0H]!='object'){
this.out('Unrecognized mapname : '+$0H);
return WScript.Quit(99);
}
else if(this.fso.FileExists($0I)){
$0J=this.fso.OpenTextFile($0I);
$0L=0;
while(!$0J.AtEndOfStream){
$0K=$0J.ReadLine();
if($0K.length&&!$0y.$1y.test($0K))
Soya_Saltstorm_ESC.prototype[$0H][$0K.replace($0y.$1x,'')]=++$0L;
}
$0J.Close();
Soya_Saltstorm_ESC.prototype[$0H].length=$0L;
if(this.verbose)
this.out('Loaded map "'+$0H+'", '+$0L+' entries. ['+$0I+']');
}
}
this.$1L=1;
}
function $0e(){
var i,$0P,$0Q,$0R,$0S=[];
for(i=0;i<arguments.length;i++){
if(arguments[i]&&this.fso.FolderExists(arguments[i])){
$0R=new Enumerator(this.fso.GetFolder(arguments[i]).SubFolders);
for(;!$0R.atEnd();$0R.moveNext())
arguments[arguments.length++]=$0R.item().Path;
$0R=new Enumerator(this.fso.GetFolder(arguments[i]).Files);
for(;!$0R.atEnd();$0R.moveNext())
if($0R.item().Size&&this.fileFilter.test($0R.item().Path))
$0S.push($0R.item().Path);
}
else if(arguments[i])
$0S.push(arguments[i]);
}
for(i=0;i<$0S.length;i++){
if(!this.fso.FileExists($0S[i])){
this.out('Couldn\'t $0N $0T:"' + this.fso.GetAbsolutePathName(aLoadQueue[i]) + '"');
return WScript.Quit(99);
}
else if(this.verbose)
this.out('Loading script :"'+this.fso.GetAbsolutePathName($0S[i])+'"');
$0Q=this.fso.GetFile($0S[i]);
this.buffer+=(this.report.scripts.length?'\r\n':'');
this.buffer+=this.$1t($0Q.Path,true);
this.report.scripts.push(
$0Q.Path+' ('+($0Q.Size/1024).toFixed(2)+' kb)');
}
return $0S.length;
}
function $0f($0U,$0V){
var $0W;
if(!$0U){
this.out('Need an output filename!');
return WScript.Quit(99);
}
else if(this.fso.FolderExists($0U)){
this.out('Need an output filename, "'+
this.fso.GetAbsolutePathName($0U)+'" is a folder.');
return WScript.Quit(99);
}
this.outFile=this.fso.GetAbsolutePathName($0U);
this.outMode=$0V?'Writing':'Appending';
$0W=this.fso.OpenTextFile(this.outFile,($0V?2:8),true);
$0W.WriteLine(this.buffer);
$0W.Close();
}
function $0g($0X){
if(!this.$1s[$0X]){
var k=1;
while(k<5){
this.$1r[k]++;
if(this.$1r[k]&&!(this.$1r[k]%62)){
k++;
if(this.$1r.length==k)
this.$1r[k]=-1;
}
else break;
}
this.$1s[$0X]='$';
for(k=this.$1r.length-1;k>0;k--)
this.$1s[$0X]+=this.$1r[0].charAt(this.$1r[k]%62);
if(this.verbose)
this.out('Substituting ['+this.$1s[$0X]+'] -> ['+$0X+']');
}
return this.$1s[$0X];
}
function $0h($0Y,$0Z,$10){
if(typeof $10!='undefined')
return '';
else return $0Y;
}
function $0i($0Y,$11){
if(typeof $11!='undefined'&&/^\s+/.test($11))
return '\r\n';
else return $0Y;
}
function $0j($0Y,$12,$13){
if(typeof $12!='undefined')
return $0Y;
else if($13&&$13.length>2&&
($0y.mangle[$13]||$0y.$1u.test($13.charAt(0))))
$13=$0y.getSubstitute($13);
else Soya_Saltstorm_ESC.prototype.bless[$13]=1;
return String('function \x00'+$13);
}
function $0k($0Y,$12,$14,$15){
if(typeof $12=='undefined'&&typeof $14=='undefined'&&typeof $15=='string'){
$15=$15.replace(/\s+/g,'');
if(!$0y.$1w.test($15)&&isNaN(parseInt($15.substr(1),10))){
$15=$15.replace($0y.$1v,'');
if($15.length>2&&!$0y.core[$15]&&!$0y.common[$15]&&
!$0y.bless[$15]&&($0y.mangle[$15]||!$0y.mangle.length))
return $0Y.replace($15,$0y.getSubstitute($15));
}
}
return $0Y;
}
function $0l($0Y,$12,$16,$P){
if(typeof $P=='string')
return(!$0y.core[$P]&&!$0y.common[$P]&&!$0y.bless[$P])?
String('.'+$0y.getSubstitute($P)):$0Y;
else if(typeof $12!='undefined')
return $0Y;
else return '';
}
function $0m($0Y,$12,$17,$18,$19){
if(typeof $12!='undefined')
return $0Y;
else if(typeof $17!='undefined')
return '\r\n';
else if(typeof $18!='undefined')
return ' ';
else return '';
}
function $0n($0Y,$12,$1a,$1b){
if(typeof $12=='undefined'){
if(!$0y.$1z.test($1b)||!$1a||!$0y.core[$1a])
return($1a||'')+$1b;
else return $0Y;
}
else return $12;
}
function $0o($0Y,$12,$1b){
if(typeof $12!='undefined')
return $0Y;
else return $1b;
}
function $0p($0Y,$1c,$1d){
return('};'+$1d);
}
function $0q($0Y,$12,$1e,$1f){
if(typeof $1e=='undefined')
return $0Y;
var $1g=($0y.$1J.test($1e+$1f))?' ':'';
return $1e+$1g+$1f;
}
function $0r($1h,$0t,$1i){
var $B=(typeof $1h=='string')?$1h:this.buffer;
this.loadMaps('core.map','common.map','bless.map','mangle.map');
if(!this.buffer.length&&!$1h)
return String();
else if(typeof $0t=='number')
this.crunchLevel=$0t;
var $1j=(new Date()).getTime()-1;
var $1k=$B.length;
this.report.rawSize+=$B.length;
if(this.crunchLevel>=1){
$B=$B.replace(this.$1A,$0h)
.replace(this.$1B,$0i)
.replace(/\s*\r?\n/g,'\r\n');
if(this.verbose)
this.out('Removing comments, empty lines and trailing whitespace, saved '+
($1k-$B.length)+' bytes.');
$1k=$B.length;
}
if(this.crunchLevel>=2){
$B=$B.replace(this.$1C,$0m);
if(this.verbose)
this.out('Removing tabs and spaces, saved '+
($1k-$B.length)+' bytes.');
$1k=$B.length;
$B=$B.replace(this.$1D,$0n);
if(this.verbose)
this.out('Removing spaces left to operators, saved '+
($1k-$B.length)+' bytes.');
$1k=$B.length;
$B=$B.replace(this.$1E,$0o);
if(this.verbose)
this.out('Removing spaces right to operators, saved '+
($1k-$B.length)+' bytes.');
$1k=$B.length;
}
if(this.substitute||$1i||this.crunchLevel>=4){
$B=$B.replace(this.$1F,$0j);
$B=$B.replace(this.$1G,$0k);
$B=$B.replace(this.$1H,$0l);
if(this.verbose)
this.out('Substitution summary, saved '+
($1k-$B.length)+' bytes.');
$1k=$B.length;
}
if(this.crunchLevel>=3){
$B=$B.replace(this.$1I,$0q);
$B=$B.replace(this.$1K,$0p);
$B+='\r\n';
if(this.verbose){
this.out('Removing newlines, saved '+
($1k-$B.length)+' bytes.');
this.out('',1);
}
}
if(typeof $1h=='string'){
this.report.crunchedSize+=$B.length;
this.buffer+=$B;
}
else{
this.buffer=$B;
this.report.crunchedSize=$B.length;
}
this.report.elapsedTime+=(new Date()).getTime()-$1j;
return this.buffer;
}
function $0s($1l){
var $1m=($1l||'\r\n'),
$1n=this.label?String($1m+this.label+$1m):'';
if(!this.report.elapsedTime){
$1n+='Nothing to report, yet...';
return(!$1o)?this.out($1n,1):$1n;
}
var $1p=Boolean(this.substitute||this.crunchLevel>=4),
$1q=this.report.rawSize-this.report.crunchedSize;
if(this.report.scripts.length){
$1n+="-----------------------------------------------------------------------------"+$1m;
$1n+=" Crunching script(s):\r\n\t * "+this.report.scripts.join("\r\n\t * ")+$1m;
$1n+="-----------------------------------------------------------------------------"+$1m;
$1n+=" "+(this.outMode||"Put")+" to : "+(this.outFile||"[buffer]")+" ("+
(this.report.crunchedSize/1024).toFixed(2)+" kb)"+$1m;
}
$1n+="-----------------------------------------------------------------------------"+$1m;
$1n+=" Processtime     :\t"+(this.report.elapsedTime/1000).toFixed(3)+" secs"+$1m;
$1n+=" Crunch-level    :\t"+this.crunchLevel+$1m;
$1n+=" Subst. engine   :\t"+($1p?'On':'Off')+$1m;
if($1p)
$1n+=" Substitutions   :\t"+(this.$1r[1]-9)+$1m;
$1n+=" Original size   :\t"+(this.report.rawSize/1024).toFixed(2)+" kb"+$1m;
$1n+=" Crunched size   :\t"+(this.report.crunchedSize/1024).toFixed(2)+" kb"+$1m;
$1n+=" Saving ratio    :\t"+($1q/1024).toFixed(2)+" kb"+$1m;
$1n+="   -'' ''-   (%) :\t"+(($1q/this.report.rawSize)*100).toFixed(2)+" %"+$1m;
$1n+="-----------------------------------------------------------------------------"+$1m;
return $1n;
}
if(typeof(Soya)=='object')Soya.registerBean('Soya.Saltstorm.ESC',false,1);

/*** </POD> ***/

]]>
</script>
<script language="JScript">
<![CDATA[
	/*
	Command flow control script for ESC.wsf
	Edited : 2005-02-06
	*/

	var oShell = WScript.CreateObject('WScript.Shell');

	if(!oShell)
	  WScript.Quit(64);

	// Do we have Jscript 5.5+ ?
	else if(oShell && parseFloat(ScriptEngineMajorVersion() + '.' + ScriptEngineMinorVersion()) < 5.5)
	  oShell.Popup(getResource('jscript'), 64, WScript.ScriptName, 16), WScript.Quit(4);
	
	// Is ESC executed under cscript ?
	// if not let user select switching to cscript automagically.
	else if(oShell && WScript.FullName.toLowerCase().indexOf('cscript') < 0){
	  if(oShell.Popup(getResource('wscript'), 64, WScript.ScriptName, 52) == 6)
	    oShell.Run('%comspec% /Q /K cscript //NoLogo ' + WScript.ScriptName + ' -a', 9);
	  WScript.Quit(3);
	  }

	// get the cmdline arguments formatted in a nice manner.
	var oArgs = Soya.WSH.getArguments();

	// should we run in verbose-mode ?;
	var bVerbose = Boolean(!oArgs.s && !oArgs.silent && (oArgs.v || oArgs.verbose));

	// create an instance of the ESC object.
	var esc = new Soya.Saltstorm.ESC(oArgs.l || oArgs.level, bVerbose);
	esc.label = 'ESC (ECMAScript Cruncher) ' + esc.version +
			 '\r\nCopyright (C) 2001-2005 Thomas Loo <tloo@saltstorm.net>';

	esc.resourcePath = esc.fso.GetParentFolderName(WScript.ScriptFullName || '.');
	var sOutput = String(oArgs.oa || oArgs.ow || '');

	if(oArgs.a || oArgs.about){
	  WScript.Echo(getResource('about'));
	  WScript.Quit(1);
	  }
	else if(oArgs.c || oArgs.copyright){
	  WScript.Echo('\n' + esc.label + getResource('copyright'));
	  WScript.Quit(1);
	  }
	else if(oArgs.e || oArgs.example){
	  WScript.Echo('\n' + esc.label + getResource('example'));
	  WScript.Quit(1);
	  }

	// if there are options missing, print out the help table and quit.
	else if((oArgs.h || oArgs.help) || !sOutput.length || !oArgs[0]){
	  WScript.Echo('\n' + esc.label + getResource('usage'));
	  WScript.Quit((oArgs.h || oArgs.help) ? 1 : 2);
	  }
	
	// Wake up the variable substitution engine if option set (-$);
	esc.substitute = Boolean(oArgs.$);

	// load input files;
	for(var i = 0; i < oArgs.length; i++)
	  esc.load(oArgs[i]);

	// crunch baby, crunch!;
	if(sOutput.toUpperCase() == 'STDOUT'){
	  esc.silent = true;
	  WScript.StdOut.Write(esc.crunch());
	  }
	else if(sOutput.length){
	  esc.crunch();
	  esc.save(sOutput, Boolean(oArgs.ow));
	  // write report to stdout if not silence'd.
	  if(!oArgs.s && !oArgs.silent)
	    WScript.StdOut.Write(esc.getReport());
	  }
	
	// Shutting down nicely..
	WScript.Quit(0);

]]>
</script>
</job>
</package>


================================================
FILE: bin/gzjs-esc.bat
================================================
cd D:\workspace\UI\dev\dwz_jui\bin

REM -------------- start package javascript --------------

type ..\js\dwz.core.js > dwzESC.js
type ..\js\dwz.util.date.js >> dwzESC.js
type ..\js\dwz.validate.method.js >> dwzESC.js
type ..\js\dwz.barDrag.js >> dwzESC.js
type ..\js\dwz.drag.js >> dwzESC.js
type ..\js\dwz.tree.js >> dwzESC.js
type ..\js\dwz.accordion.js >> dwzESC.js
type ..\js\dwz.ui.js >> dwzESC.js
type ..\js\dwz.theme.js >> dwzESC.js
type ..\js\dwz.switchEnv.js >> dwzESC.js

type ..\js\dwz.alertMsg.js >> dwzESC.js
type ..\js\dwz.contextmenu.js >> dwzESC.js
type ..\js\dwz.navTab.js >> dwzESC.js
type ..\js\dwz.tab.js >> dwzESC.js
type ..\js\dwz.resize.js >> dwzESC.js
type ..\js\dwz.dialog.js >> dwzESC.js
type ..\js\dwz.dialogDrag.js >> dwzESC.js
type ..\js\dwz.sortDrag.js >> dwzESC.js
type ..\js\dwz.cssTable.js >> dwzESC.js
type ..\js\dwz.stable.js >> dwzESC.js
type ..\js\dwz.taskBar.js >> dwzESC.js
type ..\js\dwz.ajax.js >> dwzESC.js
type ..\js\dwz.pagination.js >> dwzESC.js
type ..\js\dwz.database.js >> dwzESC.js
type ..\js\dwz.datepicker.js >> dwzESC.js
type ..\js\dwz.effects.js >> dwzESC.js
type ..\js\dwz.panel.js >> dwzESC.js
type ..\js\dwz.checkbox.js >> dwzESC.js
type ..\js\dwz.combox.js >> dwzESC.js
type ..\js\dwz.history.js >> dwzESC.js
type ..\js\dwz.print.js >> dwzESC.js

cscript ESC.wsf -l 1 -ow dwzESC1.js dwzESC.js
cscript ESC.wsf -l 2 -ow dwzESC2.js dwzESC1.js
cscript ESC.wsf -l 3 -ow dwzESC3.js dwzESC2.js

type dwzESC2.js > dwz.min.js
#gzip -f dwz.min.js
#copy dwz.min.js.gz dwz.min.gzjs /y

del dwzESC*.js
del dwz.min.js.gz

================================================
FILE: bin/gzjs.sh
================================================
# http://tool.chinaz.com/js.aspx

# -------------- start package javascript --------------

cat ../js/dwz.core.js > dwz.all.js
cat ../js/dwz.util.date.js >> dwz.all.js
cat ../js/dwz.validate.method.js >> dwz.all.js
cat ../js/dwz.barDrag.js >> dwz.all.js
cat ../js/dwz.drag.js >> dwz.all.js
cat ../js/dwz.tree.js >> dwz.all.js
cat ../js/dwz.accordion.js >> dwz.all.js
cat ../js/dwz.ui.js >> dwz.all.js
cat ../js/dwz.theme.js >> dwz.all.js
cat ../js/dwz.switchEnv.js >> dwz.all.js

cat ../js/dwz.alertMsg.js >> dwz.all.js
cat ../js/dwz.contextmenu.js >> dwz.all.js
cat ../js/dwz.navTab.js >> dwz.all.js
cat ../js/dwz.tab.js >> dwz.all.js
cat ../js/dwz.resize.js >> dwz.all.js
cat ../js/dwz.dialog.js >> dwz.all.js
cat ../js/dwz.dialogDrag.js >> dwz.all.js
cat ../js/dwz.sortDrag.js >> dwz.all.js
cat ../js/dwz.cssTable.js >> dwz.all.js
cat ../js/dwz.stable.js >> dwz.all.js
cat ../js/dwz.taskBar.js >> dwz.all.js
cat ../js/dwz.ajax.js >> dwz.all.js
cat ../js/dwz.pagination.js >> dwz.all.js
cat ../js/dwz.database.js >> dwz.all.js
cat ../js/dwz.selectedLoad.js >> dwz.all.js
cat ../js/dwz.datepicker.js >> dwz.all.js
cat ../js/dwz.effects.js >> dwz.all.js
cat ../js/dwz.panel.js >> dwz.all.js
cat ../js/dwz.checkbox.js >> dwz.all.js
cat ../js/dwz.combox.js >> dwz.all.js
cat ../js/dwz.file.js >> dwz.all.js
cat ../js/dwz.history.js >> dwz.all.js
cat ../js/dwz.print.js >> dwz.all.js

java -jar yuicompressor-2.4.8.jar dwz.all.js -o dwz.min.js --charset utf-8 --type js --nomunge

rm -f dwz.all.js

# gzip压缩
# gzip -f dwz.all.js
# mv dwz.min.js.gz dwz.min.gzjs


# -------------- start package css --------------
# cat ../../css/style.css > style.min.css
# gzip -f style.min.css
# mv style.min.css.gz style.min.gzcss


================================================
FILE: changepwd.html
================================================

<div class="pageContent">

	<form method="post" action="demo/common/ajaxDone.json" class="pageForm required-validate" onsubmit="return validateCallback(this, dialogAjaxDone)">
		<div class="pageFormContent" layoutH="58">

			<div class="unit">
				<label>旧密码:</label>
				<input type="password" name="oldPassword" size="30" minlength="6" maxlength="20" class="required" />
			</div>
			<div class="unit">
				<label>新密码:</label>
				<input type="password" id="cp_newPassword" name="newPassword" size="30" minlength="6" maxlength="20" class="required alphanumeric"/>
			</div>
			<div class="unit">
				<label>重复输入新密码:</label>
				<input type="password" name="rnewPassword" size="30" equalTo="#cp_newPassword" class="required alphanumeric"/>
			</div>
			<div class="unit">
				<label>部门名称:</label>
				<input id="inputOrg1" name="org1.id" value="" type="hidden">
				<input class="required textInput valid" name="org1.orgName" type="text" postfield="keyword" suggestfields="orgNum,orgName" suggesturl="demo/database/db_lookupSuggest.html" lookupgroup="org1" autocomplete="off">
				<a class="btnLook" href="demo/database/dwzOrgLookup.html" lookupgroup="org1">查找带回</a>
				<span class="info">(suggest+lookup)</span>
			</div>
		</div>
		<div class="formBar">
			<ul>
				<li><div class="buttonActive"><div class="buttonContent"><button type="submit">提交</button></div></div></li>
				<li><div class="button"><div class="buttonContent"><button type="button" class="close">取消</button></div></div></li>
			</ul>
		</div>
	</form>

</div>


================================================
FILE: chart/test/barchart.html
================================================

<div id="test_barchart" style="height: 400px;"></div>

<script type="text/javascript">

(function($){

	var myChart = echarts.init(document.getElementById('test_barchart'));

	// 指定图表的配置项和数据
	var option = {
		title : {
			text: '温度计式图表',
			subtext: 'From ExcelHome',
			sublink: 'http://e.weibo.com/1341556070/AizJXrAEa'
		},
		tooltip : {
			trigger: 'axis',
			axisPointer : {            // 坐标轴指示器,坐标轴触发有效
				type : 'shadow'        // 默认为直线,可选为:'line' | 'shadow'
			},
			formatter: function (params){
				return params[0].name + '<br/>'
						+ params[0].seriesName + ' : ' + params[0].value + '<br/>'
						+ params[1].seriesName + ' : ' + (params[1].value + params[0].value);
			}
		},
		legend: {
			selectedMode:false,
			data:['Acutal', 'Forecast']
		},
		toolbox: {
			show : true,
			feature : {
				mark : {show: true},
				dataView : {show: true, readOnly: false},
				restore : {show: true},
				saveAsImage : {show: true}
			}
		},
		calculable : true,
		xAxis : [
			{
				type : 'category',
				data : ['Cosco','CMA','APL','OOCL','Wanhai','Zim']
			}
		],
		yAxis : [
			{
				type : 'value',
				boundaryGap: [0, 0.1]
			}
		],
		series : [
			{
				name:'Acutal',
				type:'bar',
				stack: 'sum',
				barCategoryGap: '50%',
				itemStyle: {
					normal: {
						color: 'tomato',
						barBorderColor: 'tomato',
						barBorderWidth: 6,
						barBorderRadius:0,
						label : {
							show: true, position: 'insideTop'
						}
					}
				},
				data:[260, 200, 220, 120, 100, 80]
			},
			{
				name:'Forecast',
				type:'bar',
				stack: 'sum',
				itemStyle: {
					normal: {
						color: '#fff',
						barBorderColor: 'tomato',
						barBorderWidth: 6,
						barBorderRadius:0,
						label : {
							show: true,
							position: 'top',
							formatter: function (params) {
								for (var i = 0, l = option.xAxis[0].data.length; i < l; i++) {
									if (option.xAxis[0].data[i] == params.name) {
										return option.series[0].data[i] + params.value;
									}
								}
							},
							textStyle: {
								color: 'tomato'
							}
						}
					}
				},
				data:[40, 80, 50, 80,80, 70]
			}
		]
	};


	// 使用刚指定的配置项和数据显示图表。
	myChart.setOption(option);

})(jQuery);

</script>


================================================
FILE: chart/test/hbarchart.html
================================================

<div id="test_barchart" style="height: 400px;"></div>

<script type="text/javascript">

	(function($){

		var myChart = echarts.init(document.getElementById('test_barchart'));

		// 指定图表的配置项和数据
		var option = {
			title: {
				text: 'ECharts 入门示例'
			},
			tooltip: {},
			legend: {
				data:['销量']
			},
			yAxis: {
				data: ["衬衫","羊毛衫","雪纺衫","裤子","高跟鞋","袜子"]
			},
			xAxis: {},
			series: [{
				name: '销量',
				type: 'bar',
				data: [5, 20, 36, 10, 10, 20]
			}]
		};

		// 使用刚指定的配置项和数据显示图表。
		myChart.setOption(option);

	})(jQuery);

</script>


================================================
FILE: chart/test/linechart.html
================================================

<div id="test_linechart" style="height: 400px;"></div>

<script type="text/javascript">

	(function($){

		var myChart = echarts.init(document.getElementById('test_linechart'));

		// 指定图表的配置项和数据
		var option = {
			title : {
				text: '未来一周气温变化',
				subtext: '纯属虚构'
			},
			tooltip : {
				trigger: 'axis'
			},
			legend: {
				data:['最高气温','最低气温']
			},
			toolbox: {
				show : true,
				feature : {
					mark : {show: true},
					dataView : {show: true, readOnly: false},
					magicType : {show: true, type: ['line', 'bar']},
					restore : {show: true},
					saveAsImage : {show: true}
				}
			},
			calculable : true,
			xAxis : [
				{
					type : 'category',
					boundaryGap : false,
					data : ['周一','周二','周三','周四','周五','周六','周日']
				}
			],
			yAxis : [
				{
					type : 'value',
					axisLabel : {
						formatter: '{value} °C'
					}
				}
			],
			series : [
				{
					name:'最高气温',
					type:'line',
					data:[11, 11, 15, 13, 12, 13, 10],
					markPoint : {
						data : [
							{type : 'max', name: '最大值'},
							{type : 'min', name: '最小值'}
						]
					},
					markLine : {
						data : [
							{type : 'average', name: '平均值'}
						]
					}
				},
				{
					name:'最低气温',
					type:'line',
					data:[1, -2, 2, 5, 3, 2, 0],
					markPoint : {
						data : [
							{name : '周最低', value : -2, xAxis: 1, yAxis: -1.5}
						]
					},
					markLine : {
						data : [
							{type : 'average', name : '平均值'}
						]
					}
				}
			]
		};


		// 使用刚指定的配置项和数据显示图表。
		myChart.setOption(option);

	})(jQuery);

</script>


================================================
FILE: chart/test/linechart2.html
================================================

<div id="test_linechart2" style="height: 400px;"></div>

<script type="text/javascript">

	(function($){

		var myChart = echarts.init(document.getElementById('test_linechart2'));

		// 指定图表的配置项和数据
		var option = {
			tooltip : {
				trigger: 'axis'
			},
			legend: {
				data:['邮件营销','联盟广告','视频广告','直接访问','搜索引擎']
			},
			toolbox: {
				show : true,
				feature : {
					mark : {show: true},
					dataView : {show: true, readOnly: false},
					magicType : {show: true, type: ['line', 'bar', 'stack', 'tiled']},
					restore : {show: true},
					saveAsImage : {show: true}
				}
			},
			calculable : true,
			xAxis : [
				{
					type : 'category',
					boundaryGap : false,
					data : ['周一','周二','周三','周四','周五','周六','周日']
				}
			],
			yAxis : [
				{
					type : 'value'
				}
			],
			series : [
				{
					name:'邮件营销',
					type:'line',
					stack: '总量',
					itemStyle: {normal: {areaStyle: {type: 'default'}}},
					smooth: true,
					data:[120, 132, 101, 134, 90, 230, 210]
				},
				{
					name:'联盟广告',
					type:'line',
					stack: '总量',
					itemStyle: {normal: {areaStyle: {type: 'default'}}},
					smooth: true,
					data:[220, 182, 191, 234, 290, 330, 310]
				},
				{
					name:'视频广告',
					type:'line',
					stack: '总量',
					itemStyle: {normal: {areaStyle: {type: 'default'}}},
					smooth: true,
					data:[150, 232, 201, 154, 190, 330, 410]
				},
				{
					name:'直接访问',
					type:'line',
					stack: '总量',
					itemStyle: {normal: {areaStyle: {type: 'default'}}},
					smooth: true,
					data:[320, 332, 301, 334, 390, 330, 320]
				},
				{
					name:'搜索引擎',
					type:'line',
					stack: '总量',
					itemStyle: {normal: {areaStyle: {type: 'default'}}},
					smooth: true,
					data:[820, 932, 901, 934, 1290, 1330, 1320]
				}
			]
		};



		// 使用刚指定的配置项和数据显示图表。
		myChart.setOption(option);

	})(jQuery);

</script>


================================================
FILE: chart/test/piechart.html
================================================

<div id="test_piechart" style="height: 400px;"></div>

<script type="text/javascript">

	(function($){

		var myChart = echarts.init(document.getElementById('test_piechart'));

		// 指定图表的配置项和数据
		var option = {
			title : {
				text: '某站点用户访问来源',
				subtext: '纯属虚构',
				x:'center'
			},
			tooltip : {
				trigger: 'item',
				formatter: "{a} <br/>{b} : {c} ({d}%)"
			},
			legend: {
				orient : 'vertical',
				x : 'left',
				data:['直接访问','邮件营销','联盟广告','视频广告','搜索引擎']
			},
			toolbox: {
				show : true,
				feature : {
					mark : {show: true},
					dataView : {show: true, readOnly: false},
					magicType : {
						show: true,
						type: ['pie', 'funnel'],
						option: {
							funnel: {
								x: '25%',
								width: '50%',
								funnelAlign: 'left',
								max: 1548
							}
						}
					},
					restore : {show: true},
					saveAsImage : {show: true}
				}
			},
			calculable : true,
			series : [
				{
					name:'访问来源',
					type:'pie',
					radius : '55%',
					center: ['50%', '60%'],
					data:[
						{value:335, name:'直接访问'},
						{value:310, name:'邮件营销'},
						{value:234, name:'联盟广告'},
						{value:135, name:'视频广告'},
						{value:1548, name:'搜索引擎'}
					]
				}
			]
		};


		// 使用刚指定的配置项和数据显示图表。
		myChart.setOption(option);

	})(jQuery);

</script>


================================================
FILE: demo/baidu_map.html
================================================
<style type="text/css">
		#baidu_map {width:100%; height: 500px;}
		#r-result {width:100%;font-size:12px;}
	</style>

<div id="baidu_map"></div>
<div id="r-result">
	<input type="button"  onclick="openHeatmap();" value="显示热力图"/><input type="button"  onclick="closeHeatmap();" value="关闭热力图"/>
</div>
<script type="text/javascript">

	var map = new BMap.Map("baidu_map");          // 创建地图实例

	var point = new BMap.Point(116.418261, 39.921984);
	map.centerAndZoom(point, 15);             // 初始化地图,设置中心点坐标和地图级别
	map.enableScrollWheelZoom(); // 允许滚轮缩放

	var points =[
		{"lng":116.418261,"lat":39.921984,"count":50},
		{"lng":116.423332,"lat":39.916532,"count":51},
		{"lng":116.419787,"lat":39.930658,"count":15},
		{"lng":116.418455,"lat":39.920921,"count":40},
		{"lng":116.418843,"lat":39.915516,"count":100},
		{"lng":116.42546,"lat":39.918503,"count":6},
		{"lng":116.423289,"lat":39.919989,"count":18},
		{"lng":116.418162,"lat":39.915051,"count":80},
		{"lng":116.422039,"lat":39.91782,"count":11},
		{"lng":116.41387,"lat":39.917253,"count":7},
		{"lng":116.41773,"lat":39.919426,"count":42},
		{"lng":116.421107,"lat":39.916445,"count":4},
		{"lng":116.417521,"lat":39.917943,"count":27},
		{"lng":116.419812,"lat":39.920836,"count":23},
		{"lng":116.420682,"lat":39.91463,"count":60},
		{"lng":116.415424,"lat":39.924675,"count":8},
		{"lng":116.419242,"lat":39.914509,"count":15},
		{"lng":116.422766,"lat":39.921408,"count":25},
		{"lng":116.421674,"lat":39.924396,"count":21},
		{"lng":116.427268,"lat":39.92267,"count":1},
		{"lng":116.417721,"lat":39.920034,"count":51},
		{"lng":116.412456,"lat":39.92667,"count":7},
		{"lng":116.420432,"lat":39.919114,"count":11},
		{"lng":116.425013,"lat":39.921611,"count":35},
		{"lng":116.418733,"lat":39.931037,"count":22},
		{"lng":116.419336,"lat":39.931134,"count":4},
		{"lng":116.413557,"lat":39.923254,"count":5},
		{"lng":116.418367,"lat":39.92943,"count":3},
		{"lng":116.424312,"lat":39.919621,"count":100},
		{"lng":116.423874,"lat":39.919447,"count":87},
		{"lng":116.424225,"lat":39.923091,"count":32},
		{"lng":116.417801,"lat":39.921854,"count":44},
		{"lng":116.417129,"lat":39.928227,"count":21},
		{"lng":116.426426,"lat":39.922286,"count":80},
		{"lng":116.421597,"lat":39.91948,"count":32},
		{"lng":116.423895,"lat":39.920787,"count":26},
		{"lng":116.423563,"lat":39.921197,"count":17},
		{"lng":116.417982,"lat":39.922547,"count":17},
		{"lng":116.426126,"lat":39.921938,"count":25},
		{"lng":116.42326,"lat":39.915782,"count":100},
		{"lng":116.419239,"lat":39.916759,"count":39},
		{"lng":116.417185,"lat":39.929123,"count":11},
		{"lng":116.417237,"lat":39.927518,"count":9},
		{"lng":116.417784,"lat":39.915754,"count":47},
		{"lng":116.420193,"lat":39.917061,"count":52},
		{"lng":116.422735,"lat":39.915619,"count":100},
		{"lng":116.418495,"lat":39.915958,"count":46},
		{"lng":116.416292,"lat":39.931166,"count":9},
		{"lng":116.419916,"lat":39.924055,"count":8},
		{"lng":116.42189,"lat":39.921308,"count":11},
		{"lng":116.413765,"lat":39.929376,"count":3},
		{"lng":116.418232,"lat":39.920348,"count":50},
		{"lng":116.417554,"lat":39.930511,"count":15},
		{"lng":116.418568,"lat":39.918161,"count":23},
		{"lng":116.413461,"lat":39.926306,"count":3},
		{"lng":116.42232,"lat":39.92161,"count":13},
		{"lng":116.4174,"lat":39.928616,"count":6},
		{"lng":116.424679,"lat":39.915499,"count":21},
		{"lng":116.42171,"lat":39.915738,"count":29},
		{"lng":116.417836,"lat":39.916998,"count":99},
		{"lng":116.420755,"lat":39.928001,"count":10},
		{"lng":116.414077,"lat":39.930655,"count":14},
		{"lng":116.426092,"lat":39.922995,"count":16},
		{"lng":116.41535,"lat":39.931054,"count":15},
		{"lng":116.413022,"lat":39.921895,"count":13},
		{"lng":116.415551,"lat":39.913373,"count":17},
		{"lng":116.421191,"lat":39.926572,"count":1},
		{"lng":116.419612,"lat":39.917119,"count":9},
		{"lng":116.418237,"lat":39.921337,"count":54},
		{"lng":116.423776,"lat":39.921919,"count":26},
		{"lng":116.417694,"lat":39.92536,"count":17},
		{"lng":116.415377,"lat":39.914137,"count":19},
		{"lng":116.417434,"lat":39.914394,"count":43},
		{"lng":116.42588,"lat":39.922622,"count":27},
		{"lng":116.418345,"lat":39.919467,"count":8},
		{"lng":116.426883,"lat":39.917171,"count":3},
		{"lng":116.423877,"lat":39.916659,"count":34},
		{"lng":116.415712,"lat":39.915613,"count":14},
		{"lng":116.419869,"lat":39.931416,"count":12},
		{"lng":116.416956,"lat":39.925377,"count":11},
		{"lng":116.42066,"lat":39.925017,"count":38},
		{"lng":116.416244,"lat":39.920215,"count":91},
		{"lng":116.41929,"lat":39.915908,"count":54},
		{"lng":116.422116,"lat":39.919658,"count":21},
		{"lng":116.4183,"lat":39.925015,"count":15},
		{"lng":116.421969,"lat":39.913527,"count":3},
		{"lng":116.422936,"lat":39.921854,"count":24},
		{"lng":116.41905,"lat":39.929217,"count":12},
		{"lng":116.424579,"lat":39.914987,"count":57},
		{"lng":116.42076,"lat":39.915251,"count":70},
		{"lng":116.425867,"lat":39.918989,"count":8}];

	if(!isSupportCanvas()){
		alert('热力图目前只支持有canvas支持的浏览器,您所使用的浏览器不能使用热力图功能~')
	}
	//详细的参数,可以查看heatmap.js的文档 https://github.com/pa7/heatmap.js/blob/master/README.md
	//参数说明如下:
	/* visible 热力图是否显示,默认为true
	 * opacity 热力的透明度,1-100
	 * radius 势力图的每个点的半径大小
	 * gradient  {JSON} 热力图的渐变区间 . gradient如下所示
	 *	{
	 .2:'rgb(0, 255, 255)',
	 .5:'rgb(0, 110, 255)',
	 .8:'rgb(100, 0, 255)'
	 }
	 其中 key 表示插值的位置, 0~1.
	 value 为颜色值.
	 */
	heatmapOverlay = new BMapLib.HeatmapOverlay({"radius":20});
	map.addOverlay(heatmapOverlay);
	heatmapOverlay.setDataSet({data:points,max:100});
	//是否显示热力图
	function openHeatmap(){
		heatmapOverlay.show();
	}
	function closeHeatmap(){
		heatmapOverlay.hide();
	}
	openHeatmap();
	function setGradient(){
		/*格式如下所示:
		 {
		 0:'rgb(102, 255, 0)',
		 .5:'rgb(255, 170, 0)',
		 1:'rgb(255, 0, 0)'
		 }*/
		var gradient = {};
		var colors = document.querySelectorAll("input[type='color']");
		colors = [].slice.call(colors,0);
		colors.forEach(function(ele){
			gradient[ele.getAttribute("data-key")] = ele.value;
		});
		heatmapOverlay.setOptions({"gradient":gradient});
	}
	//判断浏览区是否支持canvas
	function isSupportCanvas(){
		var elem = document.createElement('canvas');
		return !!(elem.getContext && elem.getContext('2d'));
	}

</script>



================================================
FILE: demo/baidu_map_iframe.html
================================================
<!DOCTYPE html>
<html>
<head>
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
	<meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
	<style type="text/css">
		body, html{width: 100%;height: 100%;margin:0;font-family:"微软雅黑";}
		#panorama {width:100%; height: 500px;}
		#result {width:100%;font-size:12px;}
	</style>
	<script type="text/javascript" src="//api.map.baidu.com/api?v=2.0&ak=6PYkS1eDz5pMnyfO0jvBNE0F"></script>
	<title>显示/隐藏导航控件</title>
</head>
<body>
<div id="panorama"></div>
<div id="result">
	<button id="hideNavigationControl">隐藏导航控件</button>
	<button id="showNavigationControl">显示导航控件</button>
</div>
</body>
</html>
<script type="text/javascript">
	var panorama = new BMap.Panorama('panorama'); //默认为显示导航控件
	panorama.setPosition(new BMap.Point(116.316169, 40.005567));

	document.getElementById("hideNavigationControl").onclick = function(){
		panorama.setOptions({
			navigationControl: false //隐藏导航控件
		});
	};
	document.getElementById("showNavigationControl").onclick = function(){
		panorama.setOptions({
			navigationControl: true //显示导航控件
		});
	};
</script>



================================================
FILE: demo/combox/city_all.html
================================================
[
    ["all", "请选择省份"]
]

================================================
FILE: demo/combox/city_bj.html
================================================
[
	["bj", "北京市"]
]

================================================
FILE: demo/combox/city_sh.html
================================================
[
	["sh", "上海市"]
]

================================================
FILE: demo/common/ajaxDone.json
================================================
{
	"statusCode":"200",
	"message":"\u64cd\u4f5c\u6210\u529f",
	"navTabId":"",
	"rel":"",
	"callbackType":"",
	"forwardUrl":"",
	"confirmMsg":""
}


================================================
FILE: demo/common/ajaxDone_loadPage_error.json
================================================
{
	"statusCode":"300",
	"message":"加载页面验证失败,关闭页面",
	"navTabId":"",
	"rel":"",
	"callbackType":"closeCurrentNavTab", // closeCurrentNavTab, closeCurrentDialog
	"forwardUrl":"",
	"confirmMsg":""
}


================================================
FILE: demo/common/ajaxDone_w_list.json
================================================
{
	"statusCode":"200",
	"message":"\u64cd\u4f5c\u6210\u529f",
	"navTabId":"w_list",
	"rel":"",
	"callbackType":"closeCurrent",
	"forwardUrl":"",
	"confirmMsg":""
}


================================================
FILE: demo/common/ajaxTimeout.json
================================================
{
	"statusCode":"301",
	"message":"\u4f1a\u8bdd\u8d85\u65f6\uff0c\u8bf7\u91cd\u65b0\u767b\u5f55\u3002",
	"navTabId":"",
	"callbackType":"",
	"forwardUrl":""
}


================================================
FILE: demo/database/db_attachmentBrightBack.html
================================================
{
	"id":"1000",
	"fileName":"测试文件.txt",
	"attachmentPath":"/upload/测试文件.txt",
	"attachmentSize":"1024"
}

================================================
FILE: demo/database/db_attachmentLookup.html
================================================

<h2 class="contentTitle">请选择需要上传的附件</h2>

<form action="demo/database/db_attachmentBrightBack.html" method="post" enctype="multipart/form-data" class="pageForm required-validate" onsubmit="return iframeCallback(this, $.bringBack)">

<div class="pageContent">
	<div class="pageFormContent" layoutH="97">
		<dl>
			<dt>附件:</dt><dd><input type="file" name="image" class="required" size="30" /></dd>
		</dl>
	</div>
	<div class="formBar">
		<ul>
			<li><div class="buttonActive"><div class="buttonContent"><button type="submit">上传</button></div></div></li>
			<li><div class="button"><div class="buttonContent"><button class="close" type="button">关闭</button></div></div></li>
		</ul>
	</div>
</div>
</form>

================================================
FILE: demo/database/db_lookupSuggest.html
================================================
[
	{"id":"1", "orgName":"技术部", "orgNum":"1001"},
	{"id":"2", "orgName":"人事部", "orgNum":"1002"},
	{"id":"3", "orgName":"销售部", "orgNum":"1003"},
	{"id":"4", "orgName":"售后部", "orgNum":"1004"}
]

================================================
FILE: demo/database/db_select.html
================================================
<select class="combox" name="${param.inputName}">
	<option value="Yes">是</option>
	<option value="No">否</option>
</select>

================================================
FILE: demo/database/db_widget.html
================================================
<h2 class="contentTitle">suggest+lookup</h2>
<form action="demo/common/ajaxDone.json" method="post" class="pageForm required-validate" onsubmit="return validateCallback(this, navTabAjaxDone)">
<div class="pageContent">
	<div class="pageFormContent" layoutH="97">

		<dl class="nowrap">
			<dt>部门名称A1:</dt>
			<dd>
				<input id="inputOrg1" name="org1.id" value="" type="hidden"/>
				<input class="required" name="org1.orgName" type="text" postField="keyword" suggestFields="orgNum,orgName"
					suggestUrl="demo/database/db_lookupSuggest.html" lookupGroup="org1"/>
				<a class="btnLook" href="demo/database/dwzOrgLookup.html" lookupGroup="org1">查找带回</a>
				<span class="info">(suggest+lookup)</span>
			</dd>
		</dl>
		<dl class="nowrap">
			<dt>部门编号A1:</dt>
			<dd>
				<input class="readonly" name="org1.orgNum" readonly="readonly" type="text"/>
			</dd>
		</dl>

		<dl class="nowrap">
			<dt>部门名称A2:</dt>
			<dd>
				<input name="org1_1.id" value="" type="hidden"/>
				<input class="required" name="org1_1.orgName" type="text" suggestFields="orgNum,orgName"
					suggestUrl="demo/database/db_lookupSuggest.html?orgId={inputOrg1}" warn="请选择部门A1" lookupGroup="org1_1"/>
				<a class="btnLook" href="demo/database/dwzOrgLookup.html?orgId={inputOrg1}" warn="请选择部门A1" lookupGroup="org1_1">查找带回</a>
				<span class="info">(suggest、lookup 联动效果)</span>
			</dd>
		</dl>
		<div class="divider"></div>

		<dl class="nowrap">
			<dt>部门名称B:</dt>
			<dd>
				<input name="org2.id" value="" type="hidden">
				<input class="required" name="org2.orgName" type="text" suggestFields="orgName" suggestUrl="demo/database/db_lookupSuggest.html" lookupGroup="org2"/>
				<span class="info">(suggest)</span>
			</dd>
		</dl>

		<div class="divider"></div>

		<dl class="nowrap">
			<dt>部门名称C:</dt>
			<dd>
				<input name="org3.id" value="" type="hidden">
				<input name="org3.orgName" type="text"/>
				<a class="btnLook" href="demo/database/dwzOrgLookup2.html" lookupGroup="org3">查找带回</a>
				<span class="info">(lookup 通过复选框选择多个值查找回带)</span>
			</dd>
		</dl>
		<dl class="nowrap">
			<dt>部门编号C:</dt>
			<dd>
				<input class="readonly" name="org3.orgNum" readonly="readonly" type="text"/>
			</dd>
		</dl>

		<div class="divider"></div>
		<dl class="nowrap">
			<dt>部门(结尾带下标):</dt>
			<dd>
				<input name="org.id[]" value="1" type="hidden"/>
				<input class="required" name="org.orgName[]" value="技术部" type="text" suggestFields="orgNum,orgName" suggestUrl="demo/database/db_lookupSuggest.html" lookupGroup="org" suffix="[]"/>
				<a class="btnLook" href="demo/database/dwzOrgLookup.html" lookupGroup="org" suffix="[]">查找带回</a>
				<span class="info">需要suffix="[]"属性,下标一般用于主从结构子表</span>
			</dd>
		</dl>

		<div class="divider"></div>
		<dl class="nowrap">
			<dt>部门(中间带下标):</dt>
			<dd>
				<input name="org[].id" value="1" type="hidden"/>
				<input class="required" name="org[].orgName" value="技术部" type="text" suggestFields="orgNum,orgName" suggestUrl="demo/database/db_lookupSuggest.html" lookupGroup="org[]"/>
				<a class="btnLook" href="demo/database/dwzOrgLookup.html" lookupGroup="org[]">查找带回</a>
				<span class="info">不需要suffix="[]"属性,lookupGroup属性中加上方括号[]</span>
			</dd>
		</dl>

		<div class="divider"></div>
		<dl class="nowrap">
			<dt>自定义lookupPk:</dt>
			<dd>
				<input name="obj.orgNum" value="" type="hidden"/>
				<input class="required" name="obj.orgName" type="text" suggestFields="orgNum,orgName" suggestUrl="demo/database/db_lookupSuggest.html" lookupGroup="obj" lookupPk="orgNum"/>
				<a class="btnLook" href="demo/database/dwzOrgLookup.html" lookupGroup="obj" lookupPk="orgNum">查找带回</a>
				<span class="info">自定义lookup主键,只需添加lookupPk="xxx"属性(lookupPk默认值为id)</span>
			</dd>
		</dl>

		<div class="divider"></div>

		<dl class="nowrap">
			<dt>附件:</dt>
			<dd>
				<input name="attachment.id" value="" type="hidden">
				<input class="readonly" name="attachment.fileName" value="" readonly="readonly" type="text"/>
				<a class="btnAttach" href="demo/database/db_attachmentLookup.html" lookupGroup="attachment" width="560" height="300" title="附件">附件</a>
				<span class="info">(lookup附件)</span>
			</dd>
		</dl>

		<div class="divider"></div>
		<h3 class="contentTitle">主从结构</h3>
		<div class="tabs">
			<div class="tabsHeader">
				<div class="tabsHeaderContent">
					<ul>
						<li class="selected"><a href="javascript:void(0)"><span>从表1【Struts2 示例】</span></a></li>
						<li><a href="javascript:void(0)"><span>从表2【PHP 示例 - 结尾带下标[#index#]】</span></a></li>
						<li><a href="javascript:void(0)"><span>从表2【PHP 示例 - 结尾带下标[]】</span></a></li>
					</ul>
				</div>
			</div>
			<div class="tabsContent" style="height: 150px;">
				<div>
					<table class="list nowrap itemDetail" addButton="新建从表1条目" width="100%">
						<thead>
							<tr>
								<th type="text" name="items[#index#].itemString" size="12" fieldClass="required" fieldAttrs="{remote:'validate_remote.html', maxlength:10}">从字符串</th>
								<th type="text" name="items[#index#].itemInt" defaultVal="#index#" size="12" fieldClass="digits">从整数</th>
								<th type="text" name="items[#index#].itemFloat" defaultVal="0.8" size="12" fieldClass="number">从浮点</th>
								<th type="date" name="items[#index#].itemDate" defaultVal="2011-12-28" size="12">从日期</th>
								<th type="date" format="yyyy-MM-dd HH:mm:ss" name="items[#index#].itemDataTime" size="16">从日期时间</th>
								<th type="lookup" name="items[#index#].org.orgName" lookupGroup="items[#index#].org" lookupUrl="demo/database/dwzOrgLookup.html" suggestUrl="demo/database/db_lookupSuggest.html" suggestFields="orgName" postField="keywords" size="12" fieldClass="required">部门名称</th>
								<th type="enum" name="items[#index#].itemEnum" enumUrl="demo/database/db_select.html" size="12">从枚举</th>
								<th type="attach" name="items[#index#].attachment.fileName" lookupGroup="items[#index#].attachment" lookupUrl="demo/database/db_attachmentLookup.html" size="12">从附件</th>
								<th type="del" width="60">操作</th>
							</tr>
						</thead>
						<tbody>
							<tr class="unitBox">
								<td><input type="text" name="items[0].itemString" value="" size="12" class="required" remote="validate_remote.html" maxlength="10"></td>
								<td><input type="text" name="items[0].itemInt" value="1" size="12" class="digits textInput"></td>
								<td><input type="text" name="items[0].itemFloat" value="0.8" size="12" class="number textInput"></td>
								<td><input type="text" name="items[0].itemDate" value="2011-12-28" class="date  textInput" datefmt="yyyy-MM-dd" size="12">
									<a class="inputDateButton" href="javascript:void(0)">选择</a></td>
								<td><input type="text" name="items[0].itemDataTime" value="" class="date  textInput" datefmt="yyyy-MM-dd" size="16"><a class="inputDateButton" href="javascript:void(0)">选择</a></td>
								<td><input type="hidden" name="items[0].org.id"><input type="text" name="items[0].org.orgName" autocomplete="off" lookupgroup="items[0].org" suggesturl="demo/database/db_lookupSuggest.html" suggestfields="orgName" postfield="keywords" lookuppk="id" size="12" class="required textInput"><a class="btnLook" href="demo/database/dwzOrgLookup.html" lookupgroup="items[0].org" autocomplete="off" suggesturl="demo/database/db_lookupSuggest.html" suggestfields="orgName" postfield="keywords" lookuppk="id" title="查找带回">查找带回</a></td>
								<td>
									<select class="combox" name="${param.inputName}">
										<option value="Yes">是</option>
										<option value="No">否</option>
									</select>
								</td>
								<td><input type="hidden" name="items[0].attachment.id"><input type="text" name="items[0].attachment.fileName" size="12" readonly="readonly" class="textInput readonly"><a class="btnAttach" href="demo/database/db_attachmentLookup.html" lookupgroup="items[0].attachment" lookuppk="id" width="560" height="300" title="查找带回">查找带回</a></td>
								<td><a href="javascript:void(0)" class="btnDel ">删除</a></td>
							</tr>
						</tbody>
					</table>
				</div>
				<div>
					<table class="list nowrap itemDetail" addButton="新建从表2条目" width="100%">
						<thead>
							<tr>
								<th type="text" name="items.itemString[#index#]" size="12" fieldClass="required">从字符串</th>
								<th type="text" name="items.itemInt[#index#]" size="12" fieldClass="digits">从整数</th>
								<th type="text" name="items.itemFloat[#index#]" size="12" fieldClass="number">从浮点</th>
								<th type="date" name="items.itemDate[#index#]" size="12">从日期</th>
								<th type="date" format="yyyy-MM-dd HH:mm:ss" name="items.itemDataTime[#index#]" size="16">从日期时间</th>
								<th type="lookup" name="items.org.orgName[#index#]" lookupGroup="items.org" lookupUrl="demo/database/dwzOrgLookup.html" lookupPk="orgNum" suggestUrl="demo/database/db_lookupSuggest.html" suggestFields="orgNum,orgName" size="12">部门名称</th>
								<th type="enum" name="items.itemEnum[#index#]" enumUrl="demo/database/db_select.html" size="12">从枚举</th>
								<th type="attach" name="items.attachment.fileName[#index#]" lookupGroup="items.attachment" lookupUrl="demo/database/db_attachmentLookup.html" size="12">从附件</th>
								<th type="del" width="60">操作</th>
							</tr>
						</thead>
						<tbody></tbody>
					</table>
				</div>
				<div>
					<table class="list nowrap itemDetail" addButton="新建从表3条目" width="100%">
						<thead>
							<tr>
								<th type="text" name="items.itemString[]" size="12" fieldClass="required">从字符串</th>
								<th type="text" name="items.itemInt[]" size="12" fieldClass="digits">从整数</th>
								<th type="text" name="items.itemFloat[]" size="12" fieldClass="number">从浮点</th>
								<th type="date" name="items.itemDate[]" size="12">从日期</th>
								<th type="date" format="yyyy-MM-dd HH:mm:ss" name="items.itemDataTime[]" size="16">从日期时间</th>
								<th type="lookup" name="items.org.orgName[]" lookupGroup="items.org" lookupUrl="demo/database/dwzOrgLookup.html" suggestUrl="demo/database/db_lookupSuggest.html" suggestFields="orgName" size="12">部门名称</th>
								<th type="enum" name="items.itemEnum[]" enumUrl="demo/database/db_select.html" size="12">从枚举</th>
								<th type="attach" name="items.attachment.fileName[]" lookupGroup="items.attachment" lookupUrl="demo/database/db_attachmentLookup.html" size="12">从附件</th>
								<th type="del" width="60">操作</th>
							</tr>
						</thead>
						<tbody></tbody>
					</table>
				</div>
			</div>
			<div class="tabsFooter">
				<div class="tabsFooterContent"></div>
			</div>
		</div>

	</div>
	<div class="formBar">
		<ul>
			<li><div class="buttonActive"><div class="buttonContent"><button type="submit">保存</button></div></div></li>
			<li><div class="button"><div class="buttonContent"><button class="close" type="button">关闭</button></div></div></li>
		</ul>
	</div>
</div>
</form>


================================================
FILE: demo/database/dwzOrgLookup.html
================================================

<form id="pagerForm" action="demo/database/dwzOrgLookup.html">
	<input type="hidden" name="pageNum" value="1" />
	<input type="hidden" name="numPerPage" value="${model.numPerPage}" />
	<input type="hidden" name="orderField" value="${param.orderField}" />
	<input type="hidden" name="orderDirection" value="${param.orderDirection}" />
</form>

<div class="pageHeader">
	<form rel="pagerForm" method="post" action="demo/database/dwzOrgLookup.html" onsubmit="return dwzSearch(this, 'dialog');">
	<div class="searchBar">
		<ul class="searchContent">
			<li>
				<label>部门名称:</label>
				<input class="textInput" name="orgName" value="" type="text">
			</li>	  
			<li>
				<label>部门编号:</label>
				<input class="textInput" name="orgNum" value="" type="text">
			</li>
			<li>
				<label>部门经理:</label>
				<input class="textInput" name="fullName" value="" type="text">
			</li>
				<li>
				<label>上级部门:</label>
				<input class="textInput" name="parentOrg.orgName" value="" type="text">
			</li> 
		</ul>
		<div class="subBar">
			<ul>
				<li><div class="buttonActive"><div class="buttonContent"><button type="submit">查询</button></div></div></li>
			</ul>
		</div>
	</div>
	</form>
</div>
<div class="pageContent">

	<table class="table" layoutH="118" targetType="dialog" width="100%">
		<thead>
			<tr>
				<th orderfield="orgName">部门名称</th>
				<th orderfield="orgNum">部门编号</th>
				<th orderfield="leader">部门经理</th>
				<th orderfield="creator">创建人</th>
				<th width="80">查找带回</th>
			</tr>
		</thead>
		<tbody>
			<tr>
				<td>技术部</td>
				<td>1001</td>
				<td>administrator</td>
				<td>administrator</td>
				<td>
					<a class="btnSelect" href="javascript:$.bringBack({id:'1', orgName:'技术部', orgNum:'1001'})" title="查找带回">选择</a>
				</td>
			</tr>
			<tr>
				<td>人事部</td>
				<td>1002</td>
				<td>test</td>
				<td>administrator</td>
				<td>
					<a class="btnSelect" href="javascript:$.bringBack({id:'2', orgName:'人事部', orgNum:'1002'})" title="查找带回">选择</a>
				</td>
			</tr>
		</tbody>
	</table>

	<div class="panelBar">
		<div class="pages">
			<span>每页</span>

			<select name="numPerPage" onchange="dwzPageBreak({targetType:'dialog', numPerPage:'10'})">
				<option value="10" selected="selected">10</option>
				<option value="20">20</option>
				<option value="50">50</option>
				<option value="100">100</option>
			</select>
			<span>条,共2条</span>
		</div>
		<div class="pagination" targetType="dialog" totalCount="2" numPerPage="10" pageNumShown="1" currentPage="1"></div>
	</div>
</div>

================================================
FILE: demo/database/dwzOrgLookup2.html
================================================

<form id="pagerForm" action="demo/database/dwzOrgLookup2.html">
	<input type="hidden" name="pageNum" value="1" />
	<input type="hidden" name="numPerPage" value="${model.numPerPage}" />
	<input type="hidden" name="orderField" value="${param.orderField}" />
	<input type="hidden" name="orderDirection" value="${param.orderDirection}" />
</form>

<div class="pageHeader">
	<form rel="pagerForm" method="post" action="demo/database/dwzOrgLookup2.html" onsubmit="return dwzSearch(this, 'dialog');">
	<div class="searchBar">
		<ul class="searchContent">
			<li>
				<label>部门名称:</label>
				<input class="textInput" name="orgName" value="" type="text">
			</li>	  
			<li>
				<label>部门编号:</label>
				<input class="textInput" name="orgNum" value="" type="text">
			</li>
			<li>
				<label>部门经理:</label>
				<input class="textInput" name="leader" value="" type="text">
			</li>
				<li>
				<label>上级部门:</label>
				<input class="textInput" name="parentOrg.orgName" value="" type="text">
			</li> 
		</ul>
		<div class="subBar">
			<ul>
				<li><div class="buttonActive"><div class="buttonContent"><button type="submit">查询</button></div></div></li>
				<li><div class="button"><div class="buttonContent"><button type="button" multLookup="orgId" warn="请选择部门">选择带回</button></div></div></li>
			</ul>
		</div>
	</div>
	</form>
</div>
<div class="pageContent">

	<table class="table" layoutH="118" targetType="dialog" width="100%">
		<thead>
			<tr>
				<th width="30"><input type="checkbox" class="checkboxCtrl" group="orgId" /></th>
				<th orderfield="orgName">部门名称</th>
				<th orderfield="orgNum">部门编号</th>
				<th orderfield="leader">部门经理</th>
				<th orderfield="creator">创建人</th>
			</tr>
		</thead>
		<tbody>
			<tr>
				<td><input type="checkbox" name="orgId" value="{id:'1', orgName:'技术部', orgNum:'1001'}"/></td>
				<td>技术部</td>
				<td>1001</td>
				<td>leader</td>
				<td>administrator</td>
			</tr>
			<tr>
				<td><input type="checkbox" name="orgId" value="{id:'2', orgName:'人事部', orgNum:'1002'}"/></td>
				<td>人事部</td>
				<td>1002</td>
				<td>test</td>
				<td>administrator</td>
			</tr>
			<tr>
				<td><input type="checkbox" name="orgId" value="{id:'3', orgName:'销售部', orgNum:'1003'}"/></td>
				<td>人事部</td>
				<td>1002</td>
				<td>test</td>
				<td>administrator</td>
			</tr>
		</tbody>
	</table>

	<div class="panelBar">
		<div class="pages">
			<span>每页</span>

			<select name="numPerPage" onchange="dwzPageBreak({targetType:'dialog', numPerPage:'10'})">
				<option value="10" selected="selected">10</option>
				<option value="20">20</option>
				<option value="50">50</option>
				<option value="100">100</option>
			</select>
			<span>条,共2条</span>
		</div>
		<div class="pagination" targetType="dialog" totalCount="2" numPerPage="10" pageNumShown="1" currentPage="1"></div>
	</div>
</div>

================================================
FILE: demo/database/treeBringBack.html
================================================
<h2 class="contentTitle">tree查找带回</h2>

<div class="pageContent">
<form action="demo/common/ajaxDone.json" method="post" class="pageForm required-validate" onsubmit="return validateCallback(this, navTabAjaxDone)">

	<div class="pageFormContent" layoutH="97">
		<dl class="nowrap">
			<dt>城市:</dt>
			<dd>
				<input class="required" name="district.cityName" type="text" readonly/>
			</dd>
		</dl>

		<dl class="nowrap">
			<dt>区县:</dt>
			<dd>
				<input name="district.id" value="" type="hidden"/>
				<input class="required" name="district.districtName" type="text" readonly/>
				<a class="btnLook" href="demo/database/treeLookup.html" lookupGroup="district">查找带回</a>
			</dd>
		</dl>
	</div>
	<div class="formBar">
		<ul>
			<li><div class="buttonActive"><div class="buttonContent"><button type="submit">保存</button></div></div></li>
			<li><div class="button"><div class="buttonContent"><button class="close" type="button">关闭</button></div></div></li>
		</ul>
	</div>
</form>
</div>


================================================
FILE: demo/database/treeLookup.html
================================================

<div class="pageContent">
	<div class="pageFormContent" layoutH="58">
		<ul class="tree expand">
			<li><a href="javascript:">北京</a>
				<ul>
					<li><a href="javascript:" onclick="$.bringBack({id:'1', districtName:'东城', cityName:'北京'})">东城</a></li>
					<li><a href="javascript:" onclick="$.bringBack({id:'2', districtName:'西城', cityName:'北京'})">西城</a></li>
				</ul>
			</li>
			<li><a href="javascript:">上海</a>
				<ul>
					<li><a href="javascript:" onclick="$.bringBack({id:'1', districtName:'崇明', cityName:'上海'})">崇明</a></li>
					<li><a href="javascript:" onclick="$.bringBack({id:'2', districtName:'黄浦', cityName:'上海'})">黄浦</a></li>
				</ul>
			</li>
		</ul>
	</div>
	
	<div class="formBar">
		<ul>
			<li><div class="button"><div class="buttonContent"><button class="close" type="button">关闭</button></div></div></li>
		</ul>
	</div>
</div>

================================================
FILE: demo/pagination/ajaxDone1.html
================================================
{
	"statusCode":"200",
	"message":"\u64cd\u4f5c\u6210\u529f",
	"navTabId":"pagination",
	"rel":"",
	"callbackType":"closeCurrent",
	"forwardUrl":"",
	"confirmMsg":""
}


================================================
FILE: demo/pagination/ajaxDone2.html
================================================
{
	"statusCode":"200",
	"message":"\u64cd\u4f5c\u6210\u529f",
	"navTabId":"",
	"rel":"jbsxBox2",
	"callbackType":"closeCurrent",
	"forwardUrl":"",
	"confirmMsg":""
}


================================================
FILE: demo/pagination/ajaxDone3.html
================================================
{
	"statusCode":"200",
	"message":"\u64cd\u4f5c\u6210\u529f",
	"navTabId":"",
	"rel":"jbsxBox2",
	"callbackType":"",
	"forwardUrl":"",
	"confirmMsg":""
}


================================================
FILE: demo/pagination/dialog1.html
================================================

<div class="pageContent">
	
	<form method="post" action="demo/pagination/ajaxDone1.html" class="pageForm required-validate" onsubmit="return validateCallback(this, dialogAjaxDone)">
		<div class="pageFormContent" layoutH="58">

			<div class="unit">
				<label>病历号:</label>
				<input type="text" name="patientNo" size="30" minlength="6" maxlength="20" class="required" />
			</div>
			<div class="unit">
				<label>病人姓名:</label>
				<input type="text" name="patientNames" size="30" class="required"/>
			</div>
			
		</div>
		<div class="formBar">
			<ul>
				<li><div class="buttonActive"><div class="buttonContent"><button type="submit">提交</button></div></div></li>
				<li><div class="button"><div class="buttonContent"><button type="button" class="close">取消</button></div></div></li>
			</ul>
		</div>
	</form>
	
</div>



================================================
FILE: demo/pagination/dialog2.html
================================================

<div class="pageContent">
	
	<form method="post" action="demo/pagination/ajaxDone2.html" class="pageForm required-validate" onsubmit="return validateCallback(this, dialogAjaxDone)">
		<div class="pageFormContent" layoutH="58">

			<div class="unit">
				<label>病历号:</label>
				<input type="text" name="patientNo" size="30" minlength="6" maxlength="20" class="required" />
			</div>
			<div class="unit">
				<label>病人姓名:</label>
				<input type="text" name="patientNames" size="30" class="required"/>
			</div>
			
		</div>
		<div class="formBar">
			<ul>
				<li><div class="buttonActive"><div class="buttonContent"><button type="submit">提交</button></div></div></li>
				<li><div class="button"><div class="buttonContent"><button type="button" class="close">取消</button></div></div></li>
			</ul>
		</div>
	</form>
	
</div>



================================================
FILE: demo/pagination/layout1.html
================================================
<style type="text/css">
	ul.rightTools {float:right; display:block;}
	ul.rightTools li{float:left; display:block; margin-left:5px}
</style>

<div class="pageContent" style="padding:5px">
	<div class="panel" defH="40">
		<h1>病人基本信息</h1>
		<div>
			病人编号:<input type="text" name="patientNo" />
			<ul class="rightTools">
				<li><a class="button" target="dialog" href="demo/pagination/dialog1.html" mask="true"><span>创建病例</span></a></li>
				<li><div class="buttonDisabled"><div class="buttonContent"><button>病人治疗流程</button></div></div></li>
				<li><div class="buttonDisabled"><div class="buttonContent"><button>按病人编号检索病例</button></div></div></li>
				<li><div class="buttonDisabled"><div class="buttonContent"><button>从病人列表选取病例</button></div></div></li>
			</ul>
		</div>
	</div>
	<div class="divider"></div>
	<div class="tabs">
		<div class="tabsHeader">
			<div class="tabsHeaderContent">
				<ul>
					<li><a href="javascript:;"><span>实验室检测</span></a></li>
					<li><a href="javascript:;"><span>病人处方</span></a></li>
					<li><a href="javascript:;"><span>病人服药情况</span></a></li>
					<li><a href="javascript:;"><span>基线调查</span></a></li>
					<li><a href="javascript:;"><span>随访</span></a></li>
				</ul>
			</div>
		</div>
		<div class="tabsContent">
			<div>
	
				<div layoutH="146" style="float:left; display:block; overflow:auto; width:240px; border:solid 1px #CCC; line-height:21px; background:#fff">
				    <ul class="tree treeFolder">
						<li><a href="javascript">实验室检测</a>
							<ul>
								<li><a href="demo/pagination/list1.html" target="ajax" rel="jbsxBox">尿检</a></li>
								<li><a href="demo/pagination/list1.html" target="ajax" rel="jbsxBox">HIV检测</a></li>
								<li><a href="demo/pagination/list1.html" target="ajax" rel="jbsxBox">HCV检测</a></li>
								<li><a href="demo/pagination/list1.html" target="ajax" rel="jbsxBox">TB检测</a></li>
							</ul>
						</li>
						
				     </ul>
				</div>
				
				<div id="jbsxBox" class="unitBox" style="margin-left:246px;">
					<!--#include virtual="list1.html" -->
				</div>
	
			</div>
			
			<div>病人处方</div>
			
			<div>病人服药情况</div>
			
			<div>基线调查</div>
			
			<div>随访</div>
		</div>
		<div class="tabsFooter">
			<div class="tabsFooterContent"></div>
		</div>
	</div>
	
</div>


	



================================================
FILE: demo/pagination/layout2.html
================================================
<div class="pageContent">
	<div id="jbsxBox2" class="unitBox" style="float:left; display:block; overflow:auto; width:514px;">
		<div class="pageHeader" style="border:1px #B8D0D6 solid">
			<form id="pagerForm" onsubmit="return divSearch(this, 'jbsxBox2');" action="demo/pagination/list2.html" method="post">
				<input type="hidden" name="pageNum" value="1" />
				<input type="hidden" name="numPerPage" value="${model.numPerPage}" />
				<input type="hidden" name="orderField" value="${param.orderField}" />
				<input type="hidden" name="orderDirection" value="${param.orderDirection}" />
				<div class="searchBar">
					<table class="searchContent">
						<tr>
							<td>
								姓名:<input type="text" name="name" />
							</td>
							<td><div class="buttonActive"><div class="buttonContent"><button type="submit">检索</button></div></div></td>
						</tr>
					</table>
				</div>
			</form>
		</div>
	</div>
	
	<div id="jbsxBox3" class="unitBox" style="margin-left:520px;">
		<div class="pageHeader" style="border:1px #B8D0D6 solid">
			<form id="pagerForm" onsubmit="return divSearch(this, 'jbsxBox3');" action="demo/pagination/list3.html" method="post">
				<input type="hidden" name="pageNum" value="1" />
				<input type="hidden" name="numPerPage" value="${model.numPerPage}" />
				<input type="hidden" name="orderField" value="${param.orderField}" />
				<input type="hidden" name="orderDirection" value="${param.orderDirection}" />
				<div class="searchBar">
					<table class="searchContent">
						<tr>
							<td>
								姓名:<input type="text" name="name" />
							</td>
							<td><div class="buttonActive"><div class="buttonContent"><button type="submit">检索</button></div></div></td>
						</tr>
					</table>
				</div>
			</form>
		</div>
	</div>
	
</div>


================================================
FILE: demo/pagination/list1.html
================================================
<div class="pageHeader" style="border:1px #B8D0D6 solid">
	<form id="pagerForm" onsubmit="return divSearch(this, 'jbsxBox');" action="demo/pagination/list1.html" method="post">
	<input type="hidden" name="pageNum" value="1" />
	<input type="hidden" name="numPerPage" value="${model.numPerPage}" />
	<input type="hidden" name="orderField" value="${param.orderField}" />
	<input type="hidden" name="orderDirection" value="${param.orderDirection}" />
	<div class="searchBar">
		<table class="searchContent">
			<tr>
				<td class="dateRange">
					尿检日期:
					<input type="text" value="" readonly="readonly" class="date" name="dateStart">
					<span class="limit">-</span>
					<input type="text" value="" readonly="readonly" class="date" name="dateEnd">
				</td>
				<td>
					尿检结果:
					<input type="radio" name="njjg" value="" checked="checked" />全部
					<input type="radio" name="njjg" value="1"/>阴性
					<input type="radio" name="njjg" value="2"/>阳性
				</td>
				<td>
					病人编号:<input type="text" name="keyword" />
				</td>
				<td><div class="buttonActive"><div class="buttonContent"><button type="submit">检索</button></div></div></td>
			</tr>
		</table>
	</div>
	</form>
</div>

<div class="pageContent" style="border-left:1px #B8D0D6 solid;border-right:1px #B8D0D6 solid">
<div class="panelBar">
		<ul class="toolBar">
			<li><a class="add" href="demo/pagination/dialog2.html" target="dialog" mask="true"><span>添加尿检检测</span></a></li>
			<li><a class="delete" href="demo/pagination/ajaxDone3.html?uid={sid_obj}" target="ajaxTodo" title="确定要删除吗?"><span>删除</span></a></li>
			<li><a class="edit" href="demo/pagination/dialog2.html?uid={sid_obj}" target="dialog" mask="true"><span>修改</span></a></li>
			<li class="line">line</li>
			<li><a class="icon" href="demo/common/dwz-team.xls" target="dwzExport" title="实要导出这些记录吗?"><span>导出EXCEL</span></a></li>
		</ul>
	</div>
	<table class="table" width="99%" layoutH="260" rel="jbsxBox">
		<thead>
			<tr>
				<th width="80">序号</th>
				<th width="120" orderField="number" class="asc">诊所编号</th>
				<th orderField="name">诊所名称</th>
				<th width="100">病人编号</th>
				<th width="100">病人姓名</th>
				<th width="120">尿检日期</th>
				<th width="100">尿检结果</th>
				<th width="80">检验次数</th>
			</tr>
		</thead>
		<tbody>
			<tr target="sid_obj" rel="1">
				<td>1</td>
				<td>bj0001</td>
				<td>xxx诊所</td>
				<td>xxx</td>
				<td>张三</td>
				<td>2011-9-6</td>
				<td>xxx</td>
				<td>1</td>
			</tr>
			<tr target="sid_obj" rel="2">
				<td>1</td>
				<td>bj0001</td>
				<td>xxx诊所</td>
				<td>xxx</td>
				<td>李四</td>
				<td>2011-9-6</td>
				<td>xxx</td>
				<td>1</td>
			</tr>
			<tr target="sid_obj" rel="1">
				<td>1</td>
				<td>bj0001</td>
				<td>xxx诊所</td>
				<td>xxx</td>
				<td>张三</td>
				<td>2011-9-6</td>
				<td>xxx</td>
				<td>1</td>
			</tr>
			<tr target="sid_obj" rel="2">
				<td>1</td>
				<td>bj0001</td>
				<td>xxx诊所</td>
				<td>xxx</td>
				<td>李四</td>
				<td>2011-9-6</td>
				<td>xxx</td>
				<td>1</td>
			</tr>
			<tr target="sid_obj" rel="1">
				<td>1</td>
				<td>bj0001</td>
				<td>xxx诊所</td>
				<td>xxx</td>
				<td>张三</td>
				<td>2011-9-6</td>
				<td>xxx</td>
				<td>1</td>
			</tr>
			<tr target="sid_obj" rel="2">
				<td>1</td>
				<td>bj0001</td>
				<td>xxx诊所</td>
				<td>xxx</td>
				<td>李四</td>
				<td>2011-9-6</td>
				<td>xxx</td>
				<td>1</td>
			</tr>
			<tr target="sid_obj" rel="1">
				<td>1</td>
				<td>bj0001</td>
				<td>xxx诊所</td>
				<td>xxx</td>
				<td>张三</td>
				<td>2011-9-6</td>
				<td>xxx</td>
				<td>1</td>
			</tr>
			<tr target="sid_obj" rel="2">
				<td>1</td>
				<td>bj0001</td>
				<td>xxx诊所</td>
				<td>xxx</td>
				<td>李四</td>
				<td>2011-9-6</td>
				<td>xxx</td>
				<td>1</td>
			</tr>
			<tr target="sid_obj" rel="1">
				<td>1</td>
				<td>bj0001</td>
				<td>xxx诊所</td>
				<td>xxx</td>
				<td>张三</td>
				<td>2011-9-6</td>
				<td>xxx</td>
				<td>1</td>
			</tr>
			<tr target="sid_obj" rel="2">
				<td>1</td>
				<td>bj0001</td>
				<td>xxx诊所</td>
				<td>xxx</td>
				<td>李四</td>
				<td>2011-9-6</td>
				<td>xxx</td>
				<td>1</td>
			</tr>
			<tr target="sid_obj" rel="1">
				<td>1</td>
				<td>bj0001</td>
				<td>xxx诊所</td>
				<td>xxx</td>
				<td>张三</td>
				<td>2011-9-6</td>
				<td>xxx</td>
				<td>1</td>
			</tr>
			<tr target="sid_obj" rel="2">
				<td>1</td>
				<td>bj0001</td>
				<td>xxx诊所</td>
				<td>xxx</td>
				<td>李四</td>
				<td>2011-9-6</td>
				<td>xxx</td>
				<td>1</td>
			</tr>
		</tbody>
	</table>
	<div class="panelBar">
		<div class="pages">
			<span>显示</span>
			<select class="combox" name="numPerPage" onchange="navTabPageBreak({numPerPage:this.value}, 'jbsxBox')">
				<option value="20">20</option>
				<option value="50">50</option>
				<option value="100">100</option>
				<option value="200">200</option>
			</select>
			<span>条,共50条</span>
		</div>
		
		<div class="pagination" rel="jbsxBox" totalCount="200" numPerPage="20" pageNumShown="5" currentPage="1"></div>

	</div>
</div>

================================================
FILE: demo/pagination/list2.html
================================================
<div class="pageHeader" style="border:1px #B8D0D6 solid">
	<form id="pagerForm" onsubmit="return divSearch(this, 'jbsxBox2');" action="demo/pagination/list2.html" method="post">
	<input type="hidden" name="pageNum" value="1" />
	<input type="hidden" name="numPerPage" value="${model.numPerPage}" />
	<input type="hidden" name="orderField" value="${param.orderField}" />
	<input type="hidden" name="orderDirection" value="${param.orderDirection}" />
	<div class="searchBar">
		<table class="searchContent">
			<tr>
				<td>
					姓名:<input type="text" name="name" />
				</td>
				<td><div class="buttonActive"><div class="buttonContent"><button type="submit">检索</button></div></div></td>
			</tr>
		</table>
	</div>
	</form>
</div>

<div class="pageContent" style="border-left:1px #B8D0D6 solid;border-right:1px #B8D0D6 solid">
<div class="panelBar">
		<ul class="toolBar">
			<li><a class="add" href="demo/pagination/dialog2.html" target="dialog" mask="true"><span>添加</span></a></li>
			<li><a class="delete" href="demo/pagination/ajaxDone3.html?uid={sid_obj}" target="ajaxTodo" title="确定要删除吗?"><span>删除</span></a></li>
			<li><a class="edit" href="demo/pagination/dialog2.html?uid={sid_obj}" target="dialog" mask="true"><span>修改</span></a></li>
			<li class="line">line</li>
			<li><a class="icon" href="demo/common/dwz-team.xls" target="dwzExport" title="实要导出这些记录吗?"><span>导出EXCEL</span></a></li>
		</ul>
	</div>
	<table class="table" width="99%" layoutH="138" rel="jbsxBox2">
		<thead>
			<tr>
				<th width="80">序号</th>
				<th orderField="name" class="asc">姓名</th>
				<th orderField="sex">性别</th>
				<th>操作</th>
			</tr>
		</thead>
		<tbody>
			<tr target="sid_obj" rel="1">
				<td>1</td>
				<td>张三</td>
				<td>男</td>
				<td><a href="demo/pagination/list3.html" target="ajax" rel="jbsxBox3">载入右边grid</a></td>
			</tr>
			<tr target="sid_obj" rel="2">
				<td>2</td>
				<td>李四</td>
				<td>女</td>
				<td><a href="demo/pagination/list3.html" target="ajax" rel="jbsxBox3">载入右边grid</a></td>
			</tr>
		</tbody>
	</table>
	<div class="panelBar">
		<div class="pages">
			<span>显示</span>
			<select class="combox" name="numPerPage" onchange="navTabPageBreak({numPerPage:this.value}, 'jbsxBox2')">
				<option value="20">20</option>
				<option value="50">50</option>
				<option value="100">100</option>
				<option value="200">200</option>
			</select>
			<span>条,共2条</span>
		</div>
		
		<div class="pagination" rel="jbsxBox2" totalCount="200" numPerPage="20" pageNumShown="5" currentPage="1"></div>

	</div>
</div>

================================================
FILE: demo/pagination/list3.html
================================================
<div class="pageHeader" style="border:1px #B8D0D6 solid">
	<form id="pagerForm" onsubmit="return divSearch(this, 'jbsxBox3');" action="demo/pagination/list3.html" method="post">
	<input type="hidden" name="pageNum" value="1" />
	<input type="hidden" name="numPerPage" value="${model.numPerPage}" />
	<input type="hidden" name="orderField" value="${param.orderField}" />
	<input type="hidden" name="orderDirection" value="${param.orderDirection}" />
	<div class="searchBar">
		<table class="searchContent">
			<tr>
				<td>
					姓名:<input type="text" name="name" />
				</td>
				<td><div class="buttonActive"><div class="buttonContent"><button type="submit">检索</button></div></div></td>
			</tr>
		</table>
	</div>
	</form>
</div>

<div class="pageContent" style="border-left:1px #B8D0D6 solid;border-right:1px #B8D0D6 solid">
<div class="panelBar">
		<ul class="toolBar">
			<li><a class="add" href="demo/pagination/dialog2.html" target="dialog" mask="true"><span>添加</span></a></li>
			<li><a class="delete" href="demo/pagination/ajaxDone3.html?uid={sid_obj}" target="ajaxTodo" title="确定要删除吗?"><span>删除</span></a></li>
			<li><a class="edit" href="demo/pagination/dialog2.html?uid={sid_obj}" target="dialog" mask="true"><span>修改</span></a></li>
			<li class="line">line</li>
			<li><a class="icon" href="demo/common/dwz-team.xls" target="dwzExport" title="实要导出这些记录吗?"><span>导出EXCEL</span></a></li>
		</ul>
	</div>
	<table class="table" width="99%" layoutH="138">
		<thead>
			<tr>
				<th width="80">序号</th>
				<th>姓名</th>
				<th>性别</th>
			</tr>
		</thead>
		<tbody>
			<tr target="sid_obj" rel="1">
				<td>1</td>
				<td>张三</td>
				<td>男</td>
			</tr>
			<tr target="sid_obj" rel="2">
				<td>2</td>
				<td>李四</td>
				<td>女</td>
			</tr>
		</tbody>
	</table>
	<div class="panelBar">
		<div class="pages">
			<span>显示</span>
			<select class="combox" name="numPerPage" onchange="navTabPageBreak({numPerPage:this.value}, 'jbsxBox3')">
				<option value="20">20</option>
				<option value="50">50</option>
				<option value="100">100</option>
				<option value="200">200</option>
			</select>
			<span>条,共2条</span>
		</div>
		
		<div class="pagination" rel="jbsxBox3" totalCount="200" numPerPage="20" pageNumShown="5" currentPage="1"></div>

	</div>
</div>

================================================
FILE: demo/row-col.html
================================================

<div layoutH="0">
	<div class="row">
		<div class="col-md-6 col-sm-12">

			<div class="panel collapse" defH="150">
				<h1>左边容器</h1>
				<div>
					拖动浏览器窗口大小,测试页面布局
				</div>
			</div>

		</div>
		<div class="col-md-6 col-sm-12">

			<div class="panel collapse" defH="150">
				<h1>右边容器</h1>
				<div>
					拖动浏览器窗口大小,测试页面布局
				</div>
			</div>

		</div>
	</div>

	<h2 class="subTitle">TEST Layout</h2>
	<div class="row" style="padding: 0 10px;">
		<div class="col-md-3 col-sm-12" style="border: 1px dashed #f00">
			test1
		</div>
		<div class="col-md-6 col-sm-12" style="border: 1px dashed #f00;">
			<p>test2</p>
		</div>
		<div class="col-md-3 col-sm-12" style="border: 1px dashed #f00">
			test3
		</div>
	</div>
	<div class="row" style="padding: 0 10px;">
		<div class="col-md-3 col-sm-12" style="border: 1px dashed #f00">
			test4
		</div>
		<div class="col-md-6 col-sm-12" style="border: 1px dashed #f00">
			test5
		</div>
		<div class="col-md-3 col-sm-12" style="border: 1px dashed #f00">
			test6
		</div>
	</div>
</div>

================================================
FILE: demo/sortDrag/1.html
================================================
<h2 class="contentTitle">单个sortDrag示例</h2>

<div class="pageContent" layoutH="42">

	<!--<div style="border: 1px red dashed; height: 500px"></div>-->

	<div class="sortDrag">
		<div style="border:1px solid #B8D0D6;padding:5px;margin:5px">A1</div>
		<div style="border:1px solid #B8D0D6;padding:5px;margin:5px">A2</div>
		<div style="border:1px solid #B8D0D6;padding:5px;margin:5px">A3</div>
		<div style="border:1px solid #B8D0D6;padding:5px;margin:5px">A4</div>
		<div style="border:1px solid #B8D0D6;padding:5px;margin:5px">A5</div>
		<div style="border:1px solid #B8D0D6;padding:5px;margin:5px">A6</div>
		<div style="border:1px solid #B8D0D6;padding:5px;margin:5px">A7</div>
		<div style="border:1px solid #B8D0D6;padding:5px;margin:5px">A8</div>
		<div style="border:1px solid #B8D0D6;padding:5px;margin:5px">A9</div>
		<div style="border:1px solid #B8D0D6;padding:5px;margin:5px">A10</div>
		<div style="border:1px solid #B8D0D6;padding:5px;margin:5px">A11</div>
		<div style="border:1px solid #B8D0D6;padding:5px;margin:5px">A12</div>
		<div style="border:1px solid #B8D0D6;padding:5px;margin:5px">A13</div>
		<div style="border:1px solid #B8D0D6;padding:5px;margin:5px">A14</div>
		<div style="border:1px solid #B8D0D6;padding:5px;margin:5px">A15</div>
		<div style="border:1px solid #B8D0D6;padding:5px;margin:5px">A16</div>
		<div style="border:1px solid #B8D0D6;padding:5px;margin:5px">A17</div>
		<div style="border:1px solid #B8D0D6;padding:5px;margin:5px">A18</div>
		<div style="border:1px solid #B8D0D6;padding:5px;margin:5px">A19</div>
		<div style="border:1px solid #B8D0D6;padding:5px;margin:5px">A20</div>
	</div>


</div>

================================================
FILE: demo/sortDrag/2.html
================================================
<h2 class="contentTitle">多个sortDrag示例</h2>

<div class="pageContent" layoutH="42">

<div class="sortDrag" data-over-sort="true" style="width:48%;border:1px solid #e66;margin:5px;float:left;min-height:100px; max-height: 300px; overflow-y: auto;">
	<div style="border:1px solid #B8D0D6;padding:5px;margin:5px">A1</div>
	<div style="border:1px solid #B8D0D6;padding:5px;margin:5px">A2</div>
	<div style="border:1px solid #B8D0D6;padding:5px;margin:5px">A3</div>
	<div style="border:1px solid #B8D0D6;padding:5px;margin:5px">A4</div>
	<div style="border:1px solid #B8D0D6;padding:5px;margin:5px">A5</div>
	<div style="border:1px solid #B8D0D6;padding:5px;margin:5px">A6</div>
	<div style="border:1px solid #B8D0D6;padding:5px;margin:5px">A7</div>
	<div style="border:1px solid #B8D0D6;padding:5px;margin:5px">A8</div>
	<div style="border:1px solid #B8D0D6;padding:5px;margin:5px">A9</div>
	<div style="border:1px solid #B8D0D6;padding:5px;margin:5px">A10</div>
	<div style="border:1px solid #B8D0D6;padding:5px;margin:5px">A11</div>
	<div style="border:1px solid #B8D0D6;padding:5px;margin:5px">A12</div>
	<div style="border:1px solid #B8D0D6;padding:5px;margin:5px">A13</div>
	<div style="border:1px solid #B8D0D6;padding:5px;margin:5px">A14</div>
	<div style="border:1px solid #B8D0D6;padding:5px;margin:5px">A15</div>
	<div style="border:1px solid #B8D0D6;padding:5px;margin:5px">A16</div>
	<div style="border:1px solid #B8D0D6;padding:5px;margin:5px">A17</div>
	<div style="border:1px solid #B8D0D6;padding:5px;margin:5px">A18</div>
	<div style="border:1px solid #B8D0D6;padding:5px;margin:5px">A19</div>
	<div style="border:1px solid #B8D0D6;padding:5px;margin:5px">A20</div>
</div>

<div class="sortDrag" data-over-sort="true" style="width:48%;border:1px solid #e66;margin:5px;float:left;min-height:100px">
	<div style="border:1px solid #B8D0D6;padding:5px;margin:5px">B1</div>
	<div style="border:1px solid #B8D0D6;padding:5px;margin:5px">B2</div>
	<div style="border:1px solid #B8D0D6;padding:5px;margin:5px">B3</div>
	<div style="border:1px solid #B8D0D6;padding:5px;margin:5px">B4</div>
	<div style="border:1px solid #B8D0D6;padding:5px;margin:5px">B5</div>
</div>

</div>

================================================
FILE: demo/sortDrag/form.html
================================================
<h2 class="contentTitle">可拖动表单示例</h2>
<form method="post" action="demo/common/ajaxDone.json" class="pageForm required-validate" onsubmit="return validateCallback(this)">
<div class="pageContent">
	<div class="pageFormContent sortDrag" layoutH="97">
		<dl>
			<dt>客户名称:</dt><dd><input name="name" class="required" alt="请输入名称" type="text"></dd>
		</dl>
		<dl>
			<dt>性别:</dt><dd><input type="radio" name="sex" value="1">男 <input type="radio" name="sex" value="0">女</dd>
		</dl>
		<dl>
			<dt>年龄:</dt><dd><input name="age" value="25" /></dd>
		</dl>
		<dl>
			<dt>电话:</dt><dd><input name="phone" /></dd>
		</dl>
		<dl>
			<dt>生日:</dt>
			<dd>
				<input name="birthday" class="date" readonly="readonly" value="2011-03-21" type="text">
				<a href="javascript:void(0)" class="inputDateButton">选择</a>
			</dd>
		</dl>
		<dl>
			<dt>部门名称:</dt>
			<dd>
				<input id="inputOrg1" name="org1.id" value="" type="hidden"/>
				<input class="required" name="org1.orgName" type="text" postField="keyword" suggestFields="orgNum,orgName"
					suggestUrl="demo/database/db_lookupSuggest.html" lookupGroup="org1"/>
				<a class="btnLook" href="demo/database/dwzOrgLookup.html" lookupGroup="org1">查找带回</a>
			</dd>
		</dl>
		<dl>
			<dt>部门编号:</dt>
			<dd>
				<input class="readonly" name="org1.orgNum" readonly="readonly" type="text"/>
			</dd>
		</dl>
		<dl>
			<dt>客户状态:</dt>
			<dd>
				<select class="combox">
					<option value="Yes">是</option>
					<option value="No">否</option>
				</select>
			</dd>
		</dl>
		<dl>
			<dt>附件:</dt>
			<dd>
				<input name="attachment.id" value="" type="hidden">
				<input class="readonly" name="attachment.fileName" value="" readonly="readonly" type="text"/>
				<a class="btnAttach" href="demo/database/db_attachmentLookup.html" lookupGroup="attachment" width="560" height="300" title="附件">附件</a>
			</dd>
		</dl>
		<dl class="nowrap">
			<dt>介绍:</dt>
			<dd>
				<textarea class="editor" name="note" rows="8" cols="95"></textarea>
			</dd>
		</dl>
	</div>

	<div class="formBar">
		<ul>
			<li><div class="buttonActive"><div class="buttonContent"><button type="submit">保存</button></div></div></li>
			<li><div class="button"><div class="buttonContent"><button class="close" type="button">关闭</button></div></div></li>
		</ul>
	</div>

</div>
</form>


================================================
FILE: demo_page1.html
================================================
<form id="pagerForm" method="post" action="demo_page1.html">
	<input type="hidden" name="status" value="${param.status}">
	<input type="hidden" name="keywords" value="${param.keywords}" />
	<input type="hidden" name="pageNum" value="1" />
	<input type="hidden" name="numPerPage" value="${model.numPerPage}" />
	<input type="hidden" name="orderField" value="${param.orderField}" />
</form>


<div class="pageHeader">
	<form onsubmit="return navTabSearch(this);" action="demo_page1.html" method="post" onreset="$(this).find('select.combox').comboxReset()">
	<div class="searchBar">
		<!--<ul class="searchContent">
			<li>
				<label>我的客户:</label>
				<input type="text"/>
			</li>
			<li>
			<select class="combox" name="province">
				<option value="">所有省市</option>
				<option value="北京">北京</option>
				<option value="上海">上海</option>
				<option value="天津">天津</option>
				<option value="重庆">重庆</option>
				<option value="广东">广东</option>
			</select>
			</li>
		</ul>
		-->
		<table class="searchContent">
			<tr>
				<td>
					我的客户:<input type="text" name="keyword" />
				</td>
				<td>
					<select class="combox" name="province" ref="demo_combox_city" refUrl="demo/combox/city_{value}.html" reset-value="bj">
						<option value="all">所有省市</option>
						<option value="bj">北京</option>
						<option value="sh">上海</option>
						<option value="zj">浙江省</option>
					</select>
					<select class="combox" name="city" id="demo_combox_city" ref="demo_combox_region" refUrl="demo/combox/region_{value}.html">
						<option value="all">所有城市</option>
					</select>
					<select class="combox" name="region" id="demo_combox_region">
						<option value="all">所有区县</option>
					</select>
				</td>
				<td>
					<select class="combox" name="type">
						<option value="all">所有等级</option>
						<option value="1">1级</option>
						<option value="2">2级</option>
						<option value="3" selected>3级</option>
					</select>
				</td>
				<td class="dateRange">
					建档日期:
					<input name="startDate" class="date readonly" readonly="readonly" type="text" value="">
					<span class="limit">-</span>
					<input name="endDate" class="date readonly" readonly="readonly" type="text" value="">
				</td>
			</tr>
		</table>
		<div class="subBar">
			<ul>
				<li><div class="button"><div class="buttonContent"><button type="reset">重置</button></div></div></li>
				<li><div class="buttonActive"><div class="buttonContent"><button type="submit">检索</button></div></div></li>
				<li><a class="button" href="demo_page6.html" target="dialog" mask="true" title="查询框"><span>高级检索</span></a></li>
			</ul>
		</div>
	</div>
	</form>
</div>
<div class="pageContent">
	<div class="panelBar">
		<ul class="toolBar">
			<li><a class="add" href="demo_page4.html" target="navTab"><span>添加</span></a></li>
			<li><a class="delete" href="demo/common/ajaxDone.json?uid={sid_user}" target="ajaxTodo" title="确定要删除吗?"><span>删除</span></a></li>
			<li><a class="edit" href="demo_page4.html?uid={sid_user}" target="navTab"><span>修改</span></a></li>
			<li class="line">line</li>
			<li><a class="icon" href="demo/common/dwz-team.xls" target="dwzExport" targetType="navTab" title="实要导出这些记录吗?"><span>导出EXCEL</span></a></li>
		</ul>
	</div>
	<table class="table" width="100%" layoutH="138">
		<thead>
			<tr>
				<th width="80"></th>
				<th width="120">客户号</th>
				<th>客户名称</th>
				<th width="100">客户类型</th>
				<th width="150">证件号码</th>
				<th width="80" align="center">信用等级</th>
				<th width="80">所属行业</th>
				<th width="80">建档日期</th>
			</tr>
		</thead>
		<tbody>
			<tr target="sid_user" rel="1">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="2">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="3">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="4">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="5">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="6">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="7">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="8">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="9">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="10">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="1">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="2">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="3">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="4">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="5">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="6">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="7">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="8">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="9">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="10">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="1">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="2">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="3">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="4">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="5">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="6">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="7">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="8">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="9">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="10">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="1">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="2">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="3">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="4">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="5">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="6">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="7">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="8">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="9">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="10">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="1">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="2">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="3">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="4">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="5">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="6">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="7">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="8">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="9">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="10">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="1">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="2">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="3">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="4">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="5">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="6">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="7">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="8">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="9">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="10">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="1">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="2">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="3">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="4">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="5">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="6">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="7">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="8">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="9">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="10">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="1">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="2">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="3">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="4">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="5">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="6">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="7">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="8">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="9">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="10">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="1">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="2">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="3">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="4">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="5">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="6">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="7">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="8">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="9">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
			<tr target="sid_user" rel="10">
				<td>天津农信社</td>
				<td>A120113196309052434</td>
				<td>天津市华建装饰工程有限公司</td>
				<td>联社营业部</td>
				<td>29385739203816293</td>
				<td>5级</td>
				<td>政府机构</td>
				<td>2009-05-21</td>
			</tr>
		</tbody>
	</table>
	<div class="panelBar">
		<div class="pages">
			<span>显示</span>
			<select class="combox" name="numPerPage" onchange="navTabPageBreak({numPerPage:this.value})">
				<option value="20">20</option>
				<option value="50">50</option>
				<option value="100">100</option>
				<option value="150">150</option>
				<option value="200">200</option>
				<option value="250">250</option>
			</select>
			<span>条,共${totalCount}条</span>
		</div>

		<div class="pagination" targetType="navTab" totalCount="200" numPerPage="20" pageNumShown="10" currentPage="1"></div>

	</div>
</div>


================================================
FILE: demo_page2.html
================================================

<textarea style="width:95%;height:200px">
DWZ富客户端框架

在线演示地址	http://j-ui.com/
下载地址	http://code.google.com/p/dwz/

官方微博: http://weibo.com/dwzui

DWZ创始人:
	[北京]杜权(UI设计)		d@j-ui.com
	[杭州]吴平(Ajax开发)	w@j-ui.com
	[北京]张慧华(Ajax开发)	z@j-ui.com

新加入成员:
	[北京]张涛	QQ:122794105
	[北京]冀刚	QQ:63502308	jiweigang2008@tom.com
	[北京]郑应海	QQ:55691650
	[成都]COCO	QQ:80095667
	
有问题尽量发邮件或微博	
</textarea>

<br>


================================================
FILE: demo_page4.html
================================================

<div class="pageContent">
	<form method="post" action="demo/common/ajaxDone_w_list.json" class="pageForm required-validate" onsubmit="return validateCallback(this, navTabAjaxDone);">
		<div class="pageFormContent" layoutH="56">
			<p>
				<label>客 户 号:</label>
				<input name="sn" type="text" size="30" value="100001" readonly="readonly"/>
			</p>
			<p>
				<label>客户名称:</label>
				<input name="name" class="required" type="text" size="30" value="张慧华" alt="请输入客户名称"/>
			</p>
			<p>
				<label>部门名称:</label>
				<input type="hidden" name="orgLookup.id" value="${orgLookup.id}"/>
				<input type="text" class="required" name="orgLookup.orgName" value="" suggestFields="orgNum,orgName" suggestUrl="demo/database/db_lookupSuggest.html" lookupGroup="orgLookup" />
				<a class="btnLook" href="demo/database/dwzOrgLookup.html" lookupGroup="orgLookup">查找带回</a>
			</p>
			<p>
				<label>部门编号:</label>
				<input type="text" readonly="readonly" value="" name="dwz_orgLookup.orgNum" class="textInput">
			</p>
			<p>
				<label>识 别 码:</label>
				<input name="code" class="digits" type="text" size="30" alt="请输入数字"/>
			</p>
			<p>
				<label>客户类型:</label>
				<select name="type" class="required combox">
					<option value="">请选择</option>
					<option value="个人">个人</option>
					<option value="公司" selected>公司</option>
				</select>
			</p>
			<p>
				<label>营业执照号:</label>
				<input type="text" size="30" />
			</p>
			<p>
				<label>执照签发日期:</label>
				<input type="text" name="startDate" class="date" size="30" /><a class="inputDateButton" href="javascript:;">选择</a>
			</p>
			<p>
				<label>执照到期日期:</label>
				<input type="text" name="endDate" class="date" size="30" /><a class="inputDateButton" href="javascript:;">选择</a>
			</p>
			<p>
				<label>注册资金:</label>
				<select name="capital" class="required combox">
					<option value="">请选择</option>
					<option value="10">10</option>
					<option value="50" selected>50</option>
					<option value="100">100</option>
				</select>
				<span class="unit">万元</span>
			</p>
			<p>
				<label>注册类型:</label>
				<input type="text" size="30" />
			</p>
			<p>
				<label>注册地址:</label>
				<input type="text" size="30" />
			</p>
			<p>
				<label>所属行业:</label>
				<input type="text" size="30" />
			</p>
			<p>
				<label>组织机构代码:</label>
				<input type="text" size="30" />
			</p>
			<p>
				<label>国税登记证号码:</label>
				<input type="text" size="30" />
			</p>
			<p>
				<label>地税登记证号码:</label>
				<input type="text" size="30" />
			</p>
			<p>
				<label>贷款卡编码:</label>
				<input type="text" size="30" />
			</p>
			<p>
				<label>法人姓名:</label>
				<input type="text" size="30" />
			</p>
			<p>
				<label>法人代表身份证号:</label>
				<input type="text" size="30" />
			</p>
			<p>
				<label>身份证到期日期:</label>
				<input type="text" size="30" />
			</p>
			<p>
				<label>其他证件及号码:</label>
				<input type="text" size="30" />
			</p>
			<p>
				<label>曾用名称:</label>
				<input type="text" size="30" />
			</p>
			<p>
				<label>首次贷款日期:</label>
				<input readonly="readonly" type="text" size="30" />
			</p>
			<div class="divider"></div>
			<p>
				<label>建档日期:</label>
				<input readonly="readonly" type="text" size="30" />
			</p>
			<p>
				<label>管户经理:</label>
				<input readonly="readonly" type="text" size="30" />
			</p>
			<p>
				<label>最新修改时间:</label>
				<input readonly="readonly" type="text" size="30" />
			</p>
			<p>
				<label>最新修改人员:</label>
				<input readonly="readonly" type="text" size="30" />
			</p>
		</div>
		<div class="formBar">
			<ul>
				<!--<li><a class="buttonActive" href="javascript:;"><span>保存</span></a></li>-->
				<li><div class="buttonActive"><div class="buttonContent"><button type="submit">保存</button></div></div></li>
				<li>
					<div class="button"><div class="buttonContent"><button type="button" class="close">取消</button></div></div>
				</li>
			</ul>
		</div>
	</form>
</div>


================================================
FILE: demo_page5.html
================================================

<div class="pageContent">
	<form method="post" action="demo/common/ajaxDone.html" class="pageForm required-validate" onsubmit="return validateCallback(this, navTabAjaxDone);">
		<div class="pageFormContent" layoutH="57">
			<dl>
				<dt>资产总额:</dt>
				<dd><input class="required" name="total" type="text" size="30" /></dd>
			</dl>
			<dl class="nowrap">
				<dt>数据来源:</dt>
				<dd><textarea cols="45" rows="5" name="source"></textarea></dd>
			</dl>

			<div class="divider"></div>
			<dl>
				<dt>最新修改时间:</dt>
				<dd><input readonly="readonly" type="text" size="30" /></dd>
			</dl>
			<dl>
				<dt>最新修改人员:</dt>
				<dd><input readonly="readonly" type="text" size="30" /></dd>
			</dl>
		</div>
		<div class="formBar">
			<ul>
				<li><div class="buttonActive"><div class="buttonContent"><button type="submit">保存</button></div></div></li>
				<li><div class="button"><div class="buttonContent"><button type="button" class="close">取消</button></div></div></li>
			</ul>
		</div>
	</form>
</div>


================================================
FILE: demo_page6.html
================================================

<div class="pageContent">
	<form method="post" action="demo_page1.html" class="pageForm" onsubmit="return navTabSearch(this);">
		<div class="pageFormContent" layoutH="58">
			<div class="unit">
				<label>请输入检索条件:</label>
				<input type="text" size="50" minlength="3" maxlength="10"/>
			</div>
			<div class="divider">divider</div>
			<div class="unit">
				<label>客户划分:</label>
				<label class="radioButton"><input name="name" type="radio" />全部</label>
				<label class="radioButton"><input name="name" type="radio" />企业</label>
				<label class="radioButton"><input name="name" type="radio" />商户</label>
				<label class="radioButton"><input name="name" type="radio" />农户</label>
				<label class="radioButton"><input name="name" type="radio" />个人</label>
			</div>
			<div class="unit">
				<label>客户名称:</label>
				<input type="text" size="25" name="name"/>
				<span class="inputInfo">关键字或全称</span>
			</div>
			<div class="unit">
				<label>识 别 码:</label>
				<input type="text" size="25" name="code" class="lettersonly"/>
				<span class="inputInfo">汉字拼音首字母</span>
			</div>
			<div class="unit">
				<label>客 户 号:</label>
				<input type="text" size="25" name="accountNo" class="alphanumeric"/>
				<span class="inputInfo">完整的客户号</span>
			</div>
			<div class="unit">
				<label>证件号码:</label>
				<input type="text" size="25" name="certNo" class="alphanumeric"/>
				<span class="inputInfo">完整的营业执照号、身份证号</span>
			</div>
			<div class="unit">
				<label>组织机构代码:</label>
				<input type="text" size="25" />
				<span class="inputInfo">完整的号码</span>
			</div>
			<div class="unit">
				<label>法人姓名:</label>
				<input type="text" size="25" />
				<span class="inputInfo">关键字或全名</span>
			</div>
			<div class="unit">
				<label>客户类型:</label>
				<input type="text" size="25" />
				<span class="inputInfo">可多选</span>
			</div>
			<div class="unit">
				<label>信用等级:</label>
				<input type="text" size="25" />
				<span class="inputInfo">可多选</span>
			</div>
			<div class="unit">
				<label>所属行业:</label>
				<input type="text" size="25" />
				<span class="inputInfo">可多选</span>
			</div>
			<div class="unit">
				<label>曾用名称:</label>
				<input type="text" size="25" />
				<span class="inputInfo">关键字或全称</span>
			</div>
			<div class="unit">
				<label>建档日期:</label>
				<input type="text" size="25" name="date1" class="date"/>
				<span class="inputInfo">大于等于,小于等于</span>
			</div>
			<div class="unit">
				<label>管户经理:</label>
				<input type="text" size="25" />
				<span class="inputInfo">全辖查询时用</span>
			</div>
			<div class="divider">divider</div>
			<div class="unit">
				<label>排序条件:</label>
				<select>
					<option>按客户号倒排</option>
					<option>按建档日期倒排</option>
					<option>按信用等级顺排</option>
					<option>按客户号顺排</option>
					<option>按建档日期顺排</option>
					<option>按所属行业顺排</option>
				</select>
			</div>
		</div>
		<div class="formBar">
			<ul>
				<li><div class="buttonActive"><div class="buttonContent"><button type="submit">开始检索</button></div></div></li>
				<li><div class="button"><div class="buttonContent"><button type="reset">清空重输</button></div></div></li>
			</ul>
		</div>
	</form>
</div>


================================================
FILE: demo_upload.html
================================================

<div class="pageContent">
	<form method="post" action="demo/common/ajaxDone.html" enctype="multipart/form-data" class="pageForm required-validate" onsubmit="return iframeCallback(this);">
		<div class="pageFormContent" layoutH="56">
			<p>
				<label>文件一:</label>
				<input name="file1" type="file" />
			</p>
			<p>
				<label>文件二:</label>
				<input name="file2" type="file" />
			</p>
			
			<p><label>多文件上传:</label>
				<a rel="w_uploadify" target="navTab" href="w_uploadify.html" class="button"><span>uploadify上传示例</span></a>
			</p>
		</div>
		<div class="formBar">
			<ul>
				<li><div class="buttonActive"><div class="buttonContent"><button type="submit">提交</button></div></div></li>
				<li><div class="button"><div class="buttonContent"><button type="button" class="close">取消</button></div></div></li>
			</ul>
		</div>
	</form>
</div>


================================================
FILE: doc/git.txt
================================================
#git remote add github https://github.com/dwzteam/dwz_jui.git
git remote add github git@github.com:dwzteam/dwz_jui.git
git remote add oschina git@git.oschina.net:dwzteam/dwz_jui.git

#提交到csdn code
git push -u origin master
#提交到github
git push -u github master
#提交到oschina
git push -u oschina master

git tag -a v1.5.1 -m '升级到jQuery1.11.3'
git push origin v1.5.1
git push github v1.5.1
git push oschina v1.5.1

#删除tag
git tag -d v1.5.1
git push origin :refs/tags/v1.5.1

github生成SSH公钥
ssh-keygen -t rsa -C "zhanghuihua@sohu.com"
~/.ssh/id_rsa.pub 中内容复制到github

#清理git账号
git config --global user.name

#检查git链接
ssh -T git@github.com
ssh -T git@git.oschina.net

================================================
FILE: donation.html
================================================

<div class="pageContent">

	<div class="pageFormContent nowrap" layoutH="10">

		<p style="padding:3px;line-height: 20px; height:auto; width:auto;text-indent:2em;">每一个访问到这个页面的人,一定也是同样对技术有所追求的人。我们需要您的支持、鼓励,以及对我们所做成果的认可。如果您已经在使用jUI并为您创造了价值,请多多支持jUI吧,有了您的支持jUI才会走的更远更好,谢谢!</p>

		<p style="padding:3px;line-height: 20px; height:auto; width:auto;text-indent:2em;">
			感谢大家一直以来的支持和关注推出:
			<a style="color:blue" href="#dwz-video">DWZ系列视频教程</a>
		</p>

		<p style="padding:3px;line-height: 20px; height:auto; width:auto;text-indent:2em;">使用支付钱包或微信扫描二维码。 捐赠时希望能留下姓名QQ号保持联系,谢谢支持!</p>


		<table width="100%" class="list nowrap">
			<thead>
			<tr>
				<th align="center">支付宝扫一扫</th>
				<th align="center">微信扫一扫</th>
			</tr>
			</thead>
			<tbody>
			<tr>
				<td align="center"><img src="themes/default/images/zfb.png" width="200"/></td>
				<td align="center"><img src="themes/default/images/wx.png" width="200"/></td>
			</tr>
			</tbody>
		</table>

		<div class="divider"></div>
		<a name="dwz-video"></a>
		<ul>
			<li><a style="padding:3px;line-height: 20px;color:blue" href="http://pan.baidu.com/s/1nvlGR93" target="_blank">
				DWZ ThinkPHP 学习视频</a> 提取密码:<span style="color:red">qkdk</span></li>
			<li><a style="padding:3px;line-height: 20px;color:blue" href="http://pan.baidu.com/s/1o79LiT8" target="_blank">
				DWZ Java 学习视频</a> 提取密码:<span style="color:red">wu67</span></li>
			<li><a style="padding:3px;line-height: 20px;color:blue" href="https://pan.baidu.com/s/1nTrTG1-Jcd0uoM2KV0SO_Q" target="_blank">
				DWZ Mobile 学习视频</a></li>
		</ul>

	</div>

</div>


================================================
FILE: dwz.frag.xml
================================================
<?xml version="1.0" encoding="utf-8"?>
<_AJAX_>

<!-- dwz.dialog -->
<_PAGE_ id="dialogFrag"><![CDATA[
<div class="dialog" style="top:150px; left:300px;">
	<div class="dialogHeader" onselectstart="return false;" oncopy="return false;" onpaste="return false;" oncut="return false;">
		<div class="dialogHeader_r">
			<div class="dialogHeader_c">
				<a class="close" href="#close">close</a>
				<a class="maximize" href="#maximize">maximize</a>
				<a class="restore" href="#restore">restore</a>
				<a class="minimize" href="#minimize">minimize</a>
				<h1>弹出窗口</h1>
			</div>
		</div>
	</div>
	<div class="dialogContent layoutBox unitBox">
	</div>
	<div class="dialogFooter"><div class="dialogFooter_r"><div class="dialogFooter_c"></div></div></div>
	<div class="resizable_h_l" tar="nw"></div>
	<div class="resizable_h_r" tar="ne"></div>
	<div class="resizable_h_c" tar="n"></div>
	<div class="resizable_c_l" tar="w" style="height:300px;"></div>
	<div class="resizable_c_r" tar="e" style="height:300px;"></div>
	<div class="resizable_f_l" tar="sw"></div>
	<div class="resizable_f_r" tar="se"></div>
	<div class="resizable_f_c" tar="s"></div>
</div>
]]></_PAGE_>
<!-- dwz.dialog shadow -->
<_PAGE_ id="dialogProxy"><![CDATA[
<div id="dialogProxy" class="dialog dialogProxy">
	<div class="dialogHeader">
		<div class="dialogHeader_r">
			<div class="dialogHeader_c">
				<a class="close" href="#close">close</a>
				<a class="maximize" href="#maximize">maximize</a>
				<a class="minimize" href="#minimize">minimize</a>
				<h1></h1>
			</div>
		</div>
	</div>
	<div class="dialogContent"></div>
	<div class="dialogFooter">
		<div class="dialogFooter_r">
			<div class="dialogFooter_c">
			</div>
		</div>
	</div>
</div>
]]></_PAGE_>
<!-- dwz.dialog taskbar -->
<_PAGE_ id="taskbar"><![CDATA[
<div id="taskbar" style="left:0px; display:none;">
	<div class="taskbarContent">
		<ul></ul>
	</div>
	<div class="taskbarLeft taskbarLeftDisabled" style="display:none;">taskbarLeft</div>
	<div class="taskbarRight" style="display:none;">taskbarRight</div>
</div>
]]></_PAGE_>

<!-- other dwz fragment -->
<_PAGE_ id="dwzFrag"><![CDATA[
<div id="splitBar"></div>
<div id="splitBarProxy"></div>

<!--拖动效果-->
<div class="resizable"></div>
<!--阴影-->
<div class="shadow" style="width:508px; top:148px; left:296px;">
	<div class="shadow_h">
		<div class="shadow_h_l"></div>
		<div class="shadow_h_r"></div>
		<div class="shadow_h_c"></div>
	</div>
	<div class="shadow_c">
		<div class="shadow_c_l" style="height:296px;"></div>
		<div class="shadow_c_r" style="height:296px;"></div>
		<div class="shadow_c_c" style="height:296px;"></div>
	</div>
	<div class="shadow_f">
		<div class="shadow_f_l"></div>
		<div class="shadow_f_r"></div>
		<div class="shadow_f_c"></div>
	</div>
</div>
<!--遮盖屏幕-->
<div id="alertBackground" class="alertBackground"></div>
<div id="dialogBackground" class="dialogBackground"></div>

<div id='background' class='background'></div>
<div id='progressBar' class='progressBar'>数据加载中,请稍等...</div>
]]></_PAGE_>

<!-- dwz.pagination -->
<_PAGE_ id="pagination"><![CDATA[
<ul>
	<li class="j-first">
		<a class="first" href="javascript:;"><span>首页</span></a>
		<span class="first"><span>首页</span></span>
	</li>
	<li class="j-prev">
		<a class="previous" href="javascript:;"><span>上一页</span></a>
		<span class="previous"><span>上一页</span></span>
	</li>
	#pageNumFrag#
	<li class="j-next">
		<a class="next" href="javascript:;"><span>下一页</span></a>
		<span class="next"><span>下一页</span></span>
	</li>
	<li class="j-last">
		<a class="last" href="javascript:;"><span>末页</span></a>
		<span class="last"><span>末页</span></span>
	</li>
	<li class="jumpto"><input class="textInput" type="text" size="4" value="#currentPage#" /><input class="goto" type="button" value="确定" /></li>
</ul>
]]></_PAGE_>


<!-- dwz.alertMsg -->
<_PAGE_ id="alertBoxFrag"><![CDATA[
<div id="alertMsgBox" class="alert"><div class="alertContent"><div class="#type#"><div class="alertInner"><h1>#title#</h1><div class="msg">#message#</div></div><div class="toolBar"><ul>#butFragment#</ul></div></div></div><div class="alertFooter"><div class="alertFooter_r"><div class="alertFooter_c"></div></div></div></div>
]]></_PAGE_>

<_PAGE_ id="alertButFrag"><![CDATA[
<li><a class="button" rel="#callback#" onclick="alertMsg.close()" href="javascript:"><span>#butMsg#</span></a></li>
]]></_PAGE_>

<_PAGE_ id="calendarFrag"><![CDATA[
<div id="calendar">
	<div class="main">
		<div class="head">
			<table width="100%" border="0" cellpadding="0" cellspacing="2">
			<tr>
				<td><select name="year"></select></td>
				<td><select name="month"></select></td>
				<td width="20"><span class="close">×</span></td>
			</tr>
			</table>
		</div>
		<div class="body">
			<dl class="dayNames"><dt>日</dt><dt>一</dt><dt>二</dt><dt>三</dt><dt>四</dt><dt>五</dt><dt>六</dt></dl>
			<dl class="days">日期列表选项</dl>
			<div style="clear:both;height:0;line-height:0"></div>

		</div>

		<div class="foot">
			<table class="time">
				<tr>
					<td>
						<input type="text" class="hh" maxlength="2" start="0" end="23"/>:
						<input type="text" class="mm" maxlength="2" start="0" end="59"/>:
						<input type="text" class="ss" maxlength="2" start="0" end="59"/>
					</td>
					<td><ul><li class="up">&and;</li><li class="down">&or;</li></ul></td>
				</tr>
			</table>
			<button type="button" class="clearBut">清空</button>
			<button type="button" class="okBut">确定</button>
		</div>
		<div class="tm">
			<ul class="hh">
				<li>0</li>
				<li>1</li>
				<li>2</li>
				<li>3</li>
				<li>4</li>
				<li>5</li>
				<li>6</li>
				<li>7</li>
				<li>8</li>
				<li>9</li>
				<li>10</li>
				<li>11</li>
				<li>12</li>
				<li>13</li>
				<li>14</li>
				<li>15</li>
				<li>16</li>
				<li>17</li>
				<li>18</li>
				<li>19</li>
				<li>20</li>
				<li>21</li>
				<li>22</li>
				<li>23</li>
			</ul>
			<ul class="mm">
				<li>0</li>
				<li>5</li>
				<li>10</li>
				<li>15</li>
				<li>20</li>
				<li>25</li>
				<li>30</li>
				<li>35</li>
				<li>40</li>
				<li>45</li>
				<li>50</li>
				<li>55</li>
			</ul>
			<ul class="ss">
				<li>0</li>
				<li>10</li>
				<li>20</li>
				<li>30</li>
				<li>40</li>
				<li>50</li>
			</ul>
		</div>
	</div>
</div>
]]></_PAGE_>

<_PAGE_ id="navTabCM"><![CDATA[
<ul id="navTabCM">
	<li rel="reload">刷新标签页</li>
	<li rel="closeCurrent">关闭标签页</li>
	<li rel="closeOther">关闭其它标签页</li>
	<li rel="closeAll">关闭全部标签页</li>
</ul>
]]></_PAGE_>
<_PAGE_ id="dialogCM"><![CDATA[
<ul id="dialogCM">
	<li rel="closeCurrent">关闭弹出窗口</li>
	<li rel="closeOther">关闭其它弹出窗口</li>
	<li rel="closeAll">关闭全部弹出窗口</li>
</ul>
]]></_PAGE_>
<_PAGE_ id="externalFrag"><![CDATA[
<iframe src="{url}" style="width:100%;height:{height};" frameborder="no" border="0" marginwidth="0" marginheight="0"></iframe>
]]></_PAGE_>
<_MSG_ id="statusCode_503"><![CDATA[服务器当前负载过大或者正在维护!]]></_MSG_>
<_MSG_ id="validateFormError"><![CDATA[提交数据不完整,{0}个字段有错误,请改正后再提交!]]></_MSG_>
<_MSG_ id="sessionTimout"><![CDATA[会话超时,请重新登录!]]></_MSG_>
<_MSG_ id="alertSelectMsg"><![CDATA[请选择信息!]]></_MSG_>
<_MSG_ id="forwardConfirmMsg"><![CDATA[继续下一步!]]></_MSG_>

<_MSG_ id="dwzTitle"><![CDATA[DWZ富客户端框架]]></_MSG_>
<_MSG_ id="mainTabTitle"><![CDATA[我的主页]]></_MSG_>
</_AJAX_>


================================================
FILE: index.html
================================================
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>简单实用国产jQuery UI框架 - DWZ富客户端框架(J-UI.com)</title>

<link href="themes/default/style.css" rel="stylesheet" type="text/css" media="screen"/>
<link href="themes/css/core.css" rel="stylesheet" type="text/css" media="screen"/>
<link href="themes/css/print.css" rel="stylesheet" type="text/css" media="print"/>
<link href="uploadify/css/uploadify.css" rel="stylesheet" type="text/css" media="screen"/>
<!--[if IE]>
<link href="themes/css/ieHack.css" rel="stylesheet" type="text/css" media="screen"/>
<![endif]-->

<!--[if lt IE 9]><script src="js/speedup.js" type="text/javascript"></script><script src="js/jquery-1.12.4.js" type="text/javascript"></script><![endif]-->
<!--[if gte IE 9]><!--><script src="js/jquery-3.4.1.js" type="text/javascript"></script><!--<![endif]-->

<script src="js/jquery.cookie.js" type="text/javascript"></script>
<script src="js/jquery.validate.js" type="text/javascript"></script>
<!--<script src="js/jquery.bgiframe.js" type="text/javascript"></script>-->
<script src="xheditor/xheditor-1.2.2.min.js" type="text/javascript"></script>
<script src="xheditor/xheditor_lang/zh-cn.js" type="text/javascript"></script>
<script src="uploadify/scripts/jquery.uploadify.js" type="text/javascript"></script>

<script type="text/javascript" src="chart/echarts.min.js"></script>
<script type="text/javascript" src="//api.map.baidu.com/api?v=2.0&ak=6PYkS1eDz5pMnyfO0jvBNE0F"></script>
<script type="text/javascript" src="//api.map.baidu.com/library/Heatmap/2.0/src/Heatmap_min.js"></script>

<script src="js/dwz.core.js" type="text/javascript"></script>
<script src="js/dwz.util.date.js" type="text/javascript"></script>
<script src="js/dwz.validate.method.js" type="text/javascript"></script>
<script src="js/dwz.barDrag.js" type="text/javascript"></script>
<script src="js/dwz.drag.js" type="text/javascript"></script>
<script src="js/dwz.tree.js" type="text/javascript"></script>
<script src="js/dwz.accordion.js" type="text/javascript"></script>
<script src="js/dwz.ui.js" type="text/javascript"></script>
<script src="js/dwz.theme.js" type="text/javascript"></script>
<script src="js/dwz.switchEnv.js" type="text/javascript"></script>
<script src="js/dwz.alertMsg.js" type="text/javascript"></script>
<script src="js/dwz.contextmenu.js" type="text/javascript"></script>
<script src="js/dwz.navTab.js" type="text/javascript"></script>
<script src="js/dwz.tab.js" type="text/javascript"></script>
<script src="js/dwz.resize.js" type="text/javascript"></script>
<script src="js/dwz.dialog.js" type="text/javascript"></script>
<script src="js/dwz.dialogDrag.js" type="text/javascript"></script>
<script src="js/dwz.sortDrag.js" type="text/javascript"></script>
<script src="js/dwz.cssTable.js" type="text/javascript"></script>
<script src="js/dwz.stable.js" type="text/javascript"></script>
<script src="js/dwz.taskBar.js" type="text/javascript"></script>
<script src="js/dwz.ajax.js" type="text/javascript"></script>
<script src="js/dwz.pagination.js" type="text/javascript"></script>
<script src="js/dwz.database.js" type="text/javascript"></script>
<script src="js/dwz.selectedLoad.js" type="text/javascript"></script>
<script src="js/dwz.datepicker.js" type="text/javascript"></script>
<script src="js/dwz.effects.js" type="text/javascript"></script>
<script src="js/dwz.panel.js" type="text/javascript"></script>
<script src="js/dwz.checkbox.js" type="text/javascript"></script>
<script src="js/dwz.history.js" type="text/javascript"></script>
<script src="js/dwz.combox.js" type="text/javascript"></script>
<script src="js/dwz.file.js" type="text/javascript"></script>
<script src="js/dwz.print.js" type="text/javascript"></script>

<!-- 可以用dwz.min.js替换前面全部dwz.*.js (注意:替换时下面dwz.regional.zh.js还需要引入)
<script src="bin/dwz.min.js" type="text/javascript"></script>
-->
<script src="js/dwz.regional.zh.js" type="text/javascript"></script>

<script type="text/javascript">
$(function(){
	DWZ.init("dwz.frag.xml", {
		loginUrl:"login_dialog.html", loginTitle:"登录",	// 弹出登录对话框
//		loginUrl:"login.html",	// 跳到登录页面
		statusCode:{ok:200, error:300, timeout:301}, //【可选】
		pageInfo:{pageNum:"pageNum", numPerPage:"numPerPage", orderField:"orderField", orderDirection:"orderDirection"}, //【可选】
		keys: {statusCode:"statusCode", message:"message"}, //【可选】
		ui:{hideMode:'offsets'}, //【可选】hideMode:navTab组件切换的隐藏方式,支持的值有’display’,’offsets’负数偏移位置的值,默认值为’display’
		debug:false,	// 调试模式 【true|false】
		callback:function(){
			initEnv();
			$("#themeList").theme({themeBase:"themes"}); // themeBase 相对于index页面的主题base路径
		}
	});
});

</script>

</head>

<body>
	<div id="layout">
		<div id="header">
			<div class="headerNav">
				<a class="logo" href="http://j-ui.com">标志</a>
				<ul class="nav">
					<li id="switchEnvBox"><a href="javascript:">(<span>北京</span>)切换城市</a>
						<ul>
							<li><a href="sidebar_1.html">北京</a></li>
							<li><a href="sidebar_2.html">上海</a></li>
							<li><a href="sidebar_2.html">南京</a></li>
							<li><a href="sidebar_2.html">深圳</a></li>
							<li><a href="sidebar_2.html">广州</a></li>
							<li><a href="sidebar_2.html">天津</a></li>
							<li><a href="sidebar_2.html">杭州</a></li>
						</ul>
					</li>
					<li><a href="donation.html" target="dialog" height="400" title="捐赠 & DWZ学习视频">捐赠</a></li>
					<li><a href="changepwd.html" target="dialog" rel="changepwd" width="600">设置</a></li>
					<li><a href="http://www.cnblogs.com/dwzjs" target="_blank">博客</a></li>
					<li><a href="http://weibo.com/dwzui" target="_blank">微博</a></li>
					<li><a href="login.html">退出</a></li>
				</ul>
				<ul class="themeList" id="themeList">
					<li theme="default"><div class="selected">蓝色</div></li>
					<li theme="green"><div>绿色</div></li>
					<!--<li theme="red"><div>红色</div></li>-->
					<li theme="purple"><div>紫色</div></li>
					<li theme="silver"><div>银色</div></li>
					<li theme="azure"><div>天蓝</div></li>
				</ul>
			</div>

			<!-- navMenu -->

		</div>

		<div id="leftside">
			<div id="sidebar_s">
				<div class="collapse">
					<div class="toggleCollapse"><div></div></div>
				</div>
			</div>
			<div id="sidebar">
				<div class="toggleCollapse"><h2>主菜单</h2><div>收缩</div></div>

				<div class="accordion" fillSpace="sidebar">
					<div class="accordionHeader">
						<h2><span>Folder</span>界面组件</h2>
					</div>
					<div class="accordionContent">
						<ul class="tree treeFolder">
							<li><a href="tabsPage.html" target="navTab">主框架面板</a>
								<ul>
									<li><a href="main.html" target="navTab" rel="main">我的主页</a></li>
									<li><a href="demo/row-col.html" target="navTab" rel="row-col">栅格系统(Bootstrap)</a></li>
									<li><a href="http://www.baidu.com" target="navTab" rel="page1">页面一(外部链接)</a></li>
									<li><a href="demo/baidu_map_iframe.html" target="navTab" rel="bmap" external="true" title="需要设置external属性为true">地图(external iframe方式)</a></li>
									<li><a href="demo/baidu_map.html" target="navTab" rel="bmap">地图(直接嵌入方式)</a></li>
									<li><a href="demo_page1.html" target="navTab" rel="page1" fresh="false">替换页面一</a></li>
									<li><a href="demo_page2.html" target="navTab" rel="page2">页面二</a></li>
									<li><a href="demo_page4.html" target="navTab" rel="page3" title="页面三(自定义标签名)">页面三</a></li>
									<li><a href="demo_page4.html" target="navTab" rel="page4" fresh="false">测试页面(fresh="false")</a></li>
									<li><a href="w_editor.html" target="navTab">表单提交会话超时</a></li>
									<li><a href="demo/common/ajaxTimeout.json" target="navTab">navTab会话超时</a></li>
									<li><a href="demo/common/ajaxTimeout.json" target="dialog">dialog会话超时</a></li>
									<li><a href="demo/common/ajaxDone_loadPage_error.json" target="navTab">navTab加载页面验证失败</a></li>
									<li><a href="demo/common/ajaxDone_loadPage_error.json" target="dialog">dialog加载页面验证失败</a></li>
									<li><a href="index_menu.html" target="_blank">横向导航条</a></li>
									<li><a href="miscDragScreen1.html" target="_blank">屏幕拖拽配制示例</a></li>
								</ul>
							</li>

							<li><a>常用组件</a>
								<ul>
									<li><a href="w_panel.html" target="navTab" rel="w_panel">面板</a></li>
									<li><a href="w_tabs.html" target="navTab" rel="w_tabs">选项卡面板</a></li>
									<li><a href="w_dialog.html" target="navTab" rel="w_dialog">弹出窗口</a></li>
									<li><a href="w_alert.html" target="navTab" rel="w_alert">提示窗口</a></li>
									<li><a href="w_list.html" target="navTab" rel="w_list">CSS表格容器</a></li>
									<li><a href="demo_page1.html" target="navTab" rel="w_table">表格容器</a></li>
									<li><a href="w_removeSelected.html" target="navTab" rel="w_table">表格数据库排序+批量删除</a></li>
									<li><a href="w_tree.html" target="navTab" rel="w_tree">树形菜单</a></li>
									<li><a href="w_accordion.html" target="navTab" rel="w_accordion">滑动菜单</a></li>
									<li><a href="w_editor.html" target="navTab" rel="w_editor">编辑器</a></li>
									<li><a href="w_datepicker.html" target="navTab" rel="w_datepicker">日期控件</a></li>
									<li><a href="demo/database/db_widget.html" target="navTab" rel="db">suggest+lookup+主从结构</a></li>
									<li><a href="demo/database/treeBringBack.html" target="navTab" rel="db">tree查找带回</a></li>
									<li><a href="demo/sortDrag/1.html" target="navTab" rel="sortDrag">单个sortDrag示例</a></li>
									<li><a href="demo/sortDrag/2.html" target="navTab" rel="sortDrag">多个sortDrag示例</a></li>
									<li><a href="demo/sortDrag/form.html" target="navTab" rel="sortDrag">可拖动表单示例</a></li>
								</ul>
							</li>

							<li><a>表单组件</a>
								<ul>
									<li><a href="w_validation.html" target="navTab" rel="w_validation">表单验证</a></li>
									<li><a href="w_button.html" target="navTab" rel="w_button">按钮</a></li>
									<li><a href="w_textInput.html" target="navTab" rel="w_textInput">文本框/文本域</a></li>
									<li><a href="w_combox.html" target="navTab" rel="w_combox">下拉菜单</a></li>
									<li><a href="w_checkbox.html" target="navTab" rel="w_checkbox">多选框/单选框</a></li>
									<li><a href="demo_upload.html" target="navTab" rel="demo_upload">iframeCallback表单提交</a></li>
									<li><a href="w_uploadify.html" target="navTab" rel="w_uploadify">uploadify多文件上传</a></li>
									<li><a href="w_html5_upload.html" target="navTab" rel="html5_upload">html5文件上传</a></li>
								</ul>
							</li>
							<li><a>组合应用</a>
								<ul>
									<li><a href="demo/pagination/layout1.html" target="navTab" rel="pagination1">局部刷新分页1</a></li>
									<li><a href="demo/pagination/layout2.html" target="navTab" rel="pagination2">局部刷新分页2</a></li>
								</ul>
							</li>
							<li><a>echarts图表</a>
								<ul>
									<li><a href="chart/test/barchart.html" target="navTab" rel="chart">柱状图(垂直)</a></li>
									<li><a href="chart/test/hbarchart.html" target="navTab" rel="chart">柱状图(水平)</a></li>
									<li><a href="chart/test/linechart.html" target="navTab" rel="chart">折线图</a></li>
									<li><a href="chart/test/linechart2.html" target="navTab" rel="chart">曲线图</a></li>
									<li><a href="chart/test/piechart.html" target="navTab" rel="chart">饼图</a></li>
								</ul>
							</li>
							<li><a href="dwz.frag.xml" target="navTab" external="true">dwz.frag.xml</a></li>
						</ul>
					</div>
					<div class="accordionHeader">
						<h2><span>Folder</span>典型页面</h2>
					</div>
					<div class="accordionContent">
						<ul class="tree treeFolder treeCheck">
							<li><a href="demo_page1.html" target="navTab" rel="demo_page1">查询我的客户</a></li>
							<li><a href="demo_page1.html" target="navTab" rel="demo_page2">表单查询页面</a></li>
							<li><a href="demo_page4.html" target="navTab" rel="demo_page4">表单录入页面</a></li>
							<li><a href="demo_page5.html" target="navTab" rel="demo_page5">有文本输入的表单</a></li>
							<li><a href="javascript:;">有提示的表单输入页面</a>
								<ul>
									<li><a href="javascript:;">页面一</a></li>
									<li><a href="javascript:;">页面二</a></li>
								</ul>
							</li>
							<li><a href="javascript:;">选项卡和图形的页面</a>
								<ul>
									<li><a href="javascript:;">页面一</a></li>
									<li><a href="javascript:;">页面二</a></li>
								</ul>
							</li>
							<li><a href="javascript:;">选项卡和图形切换的页面</a></li>
							<li><a href="javascript:;">左右两个互动的页面</a></li>
							<li><a href="javascript:;">列表输入的页面</a></li>
							<li><a href="javascript:;">双层栏目列表的页面</a></li>
						</ul>
					</div>
					<div class="accordionHeader">
						<h2><span>Folder</span>流程演示</h2>
					</div>
					<div class="accordionContent">
						<ul class="tree">
							<li><a href="newPage1.html" target="dialog" rel="dlg_page">列表</a></li>
							<li><a href="newPage1.html" target="dialog" rel="dlg_page2">列表</a></li>
						</ul>
					</div>
				</div>
			</div>
		</div>
		<div id="container">
			<div id="navTab" class="tabsPage">
				<div class="tabsPageHeader">
					<div class="tabsPageHeaderContent"><!-- 显示左右控制时添加 class="tabsPageHeaderMargin" -->
						<ul class="navTab-tab">
							<li tabid="main" class="main"><a href="javascript:;"><span><span class="home_icon">我的主页</span></span></a></li>
						</ul>
					</div>
					<div class="tabsLeft">left</div><!-- 禁用只需要添加一个样式 class="tabsLeft tabsLeftDisabled" -->
					<div class="tabsRight">right</div><!-- 禁用只需要添加一个样式 class="tabsRight tabsRightDisabled" -->
					<div class="tabsMore">more</div>
				</div>
				<ul class="tabsMoreList">
					<li><a href="javascript:;">我的主页</a></li>
				</ul>
				<div class="navTab-panel tabsPageContent layoutBox">
					<div class="page unitBox">
						<div class="accountInfo">
							<div class="alertInfo">
								<p><a href="https://gitee.com/dwzteam/dwz_jui/blob/master/doc/dwz-user-guide.pdf" target="_blank" style="line-height:19px"><span>DWZ框架使用手册</span></a></p>
								<p><a href="http://pan.baidu.com/s/18Bb8Z" target="_blank" style="line-height:19px">DWZ框架开发视频教材</a></p>
							</div>
							<div class="right">
								<p style="color:red">DWZ官方微博 <a href="http://weibo.com/dwzui" target="_blank">http://weibo.com/dwzui</a></p>
							</div>
							<p><span>DWZ富客户端框架</span></p>
							<p>DWZ官方微博:<a href="http://weibo.com/dwzui" target="_blank">http://weibo.com/dwzui</a></p>
						</div>
						<div class="pageFormContent" layoutH="80" style="margin-right:230px">


<h2>DWZ系列开源项目:</h2>
<div class="unit"><a href="https://git.oschina.net/dwzteam/dwz_jui" target="_blank">dwz富客户端框架 - jUI</a></div>
<div class="unit"><a href="https://git.oschina.net/dwzteam/dwz_group" target="_blank">DWZ框架 + ThinkPHP 实现小组工作日志系统</a></div>
<div class="unit"><a href="https://code.csdn.net/dwzteam/dwz_ssh2" target="_blank">dwz4j企业级Java Web快速开发框架(Hibernate+Spring+Struts2) + jUI整合应用</a></div>
<div class="unit"><a href="https://code.csdn.net/dwzteam/dwz_springmvc" target="_blank">dwz4j企业级Java Web快速开发框架(Mybatis + SpringMVC) + jUI整合应用</a></div>
<div class="unit"><a href="https://code.csdn.net/dwzteam/dwz_thinkphp" target="_blank">ThinkPHP + jUI整合应用</a></div>
<div class="unit"><a href="https://code.csdn.net/dwzteam/dwz_zendframework" target="_blank">Zend Framework + jUI整合应用</a></div>
<div class="unit"><a href="http://www.yiiframework.com/extension/dwzinterface/" target="_blank">YII + jUI整合应用</a></div>
<div class="unit"><a href="https://gitee.com/dwzteam/dwz_mobile_app" target="_blank">DWZ Mobile HTML5混合APP框架</a></div>

<a class="buttonActive" href="https://git.oschina.net/dwzteam/" target="_blank"><span>DWZ开源系列源码(oschina)</span></a>
<a class="button" href="https://github.com/dwzteam/" target="_blank"><span>DWZ开源系列源码(github)</span></a>
<a class="button" href="donation.html" target="dialog" height="400"><span style="color: red">捐赠 & DWZ学习视频</span></a>

<div class="divider"></div>
<h2>有偿服务(<span style="">公司培训,技术支持,解决使用jUI过程中出现的全部疑难问题</span>):</h2><br/>
<pre style="margin:5px;line-height:1.4em;">
合作电话:18600055221(杜权)
技术支持:17767167745(张慧华)
邮箱:support@jui.org
</pre>
<!--<a class="button" href="http://code.csdn.net/groups/2155" target="_blank"><span>DWZ讨论组</span></a>-->

<div class="divider"></div>
<h2>DWZ 移动端框架(<span style="color: red">DWZ Mobile HTML5混合APP框架)</span></h2>
<pre style="margin:5px;line-height:1.4em">
- 在线演示版,使用chrome 开发模式设置手机版:http://mobile.jui.org
- git源码:https://gitee.com/dwzteam/dwz_mobile_app
- 在线文档:http://dwzteam.gitee.io/dwz_mobile_doc_v1
- 安卓 Apk 安装测试版:http://mobile.jui.org/apk/dwz_mobile_app.apk
</pre>
<img src="./doc/dwz_mobile_app.jpg" width="100%">

<div class="divider"></div>
<h2>常见问题及解决:</h2>
<pre style="margin:5px;line-height:1.4em">
Error loading XML document: dwz.frag.xml
直接用IE打开index.html弹出一个对话框:Error loading XML document: dwz.frag.xml
原因:没有加载成功dwz.frag.xml。IE ajax laod本地文件有限制, 是ie安全级别的问题, 不是框架的问题。
解决方法:部署到apache 等 Web容器下。

如何精简JS:
	1) dwz.min.js替换全部dwz.*.js (注意:替换时下面dwz.regional.zh.js还需要引入
	2) demo index页面head中引入的几个第三方JS库也可以根据项目情况删除:
		js/jquery.cookie.js			用于cookie中纪录jUI主题theme,下次打开浏览器时纪录用户选择的主题风格
		js/jquery.validate.js		用于form表单验证
		js/jquery.bgiframe.js		用于解决IE6 dialog盖不住navTab页面中的select问题
		xheditor/xheditor-1.2.2.min.js	在线编辑器
		xheditor/xheditor_lang/zh-cn.js	在线编辑器国际化
		uploadify/scripts/jquery.uploadify.min.js	多文件上传
</pre>

						</div>

						<div style="width:230px;position: absolute;top:60px;right:0" layoutH="80">
							<iframe width="100%" height="430" class="share_self" frameborder="0" scrolling="no" src="//widget.weibo.com/weiboshow/index.php?width=0&height=430&fansRow=2&ptype=1&skin=1&isTitle=0&noborder=1&isWeibo=1&isFans=0&uid=1739071261&verifier=c683dfe7"></iframe>
						</div>
					</div>

				</div>
			</div>
		</div>

	</div>

	<div id="footer">Copyright &copy; 2020 <a href="demo_page2.html" target="dialog">DWZ团队</a> 京ICP备15053290号-2</div>

</body>
</html>


================================================
FILE: index_menu.html
================================================
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=7" />
<title>简单实用国产jQuery UI框架 - DWZ富客户端框架(J-UI.com)</title>

<link href="themes/default/style.css" rel="stylesheet" type="text/css" media="screen"/>
<link href="themes/css/core.css" rel="stylesheet" type="text/css" media="screen"/>
<link href="themes/css/print.css" rel="stylesheet" type="text/css" media="print"/>
<link href="uploadify/css/uploadify.css" rel="stylesheet" type="text/css" media="screen"/>
<!--[if IE]>
<link href="themes/css/ieHack.css" rel="stylesheet" type="text/css" media="screen"/>
<![endif]-->
<style type="text/css">
	#header{height:85px}
	#leftside, #container, #splitBar, #splitBarProxy{top:90px}
</style>

<!--[if lt IE 9]><script src="js/speedup.js" type="text/javascript"></script><script src="js/jquery-1.12.4.js" type="text/javascript"></script><![endif]-->
<!--[if gte IE 9]><!--><script src="js/jquery-3.4.1.js" type="text/javascript"></script><!--<![endif]-->

<script src="js/jquery.cookie.js" type="text/javascript"></script>
<script src="js/jquery.validate.js" type="text/javascript"></script>
<!--<script src="js/jquery.bgiframe.js" type="text/javascript"></script>-->
<script src="xheditor/xheditor-1.2.2.min.js" type="text/javascript"></script>
<script src="xheditor/xheditor_lang/zh-cn.js" type="text/javascript"></script>
<script src="uploadify/scripts/jquery.uploadify.min.js" type="text/javascript"></script>

<script src="bin/dwz.min.js" type="text/javascript"></script>
<script src="js/dwz.regional.zh.js" type="text/javascript"></script>
	<script src="js/dwz.selectedLoad.js" type="text/javascript"></script>

<script type="text/javascript">
$(function(){
	DWZ.init("dwz.frag.xml", {
		loginUrl:"login_dialog.html", loginTitle:"登录",	// 弹出登录对话框
//		loginUrl:"login.html",	// 跳到登录页面
		statusCode:{ok:200, error:300, timeout:301}, //【可选】
		keys: {statusCode:"statusCode", message:"message"}, //【可选】
		pageInfo:{pageNum:"pageNum", numPerPage:"numPerPage", orderField:"orderField", orderDirection:"orderDirection"}, //【可选】
		debug:false,	// 调试模式 【true|false】
		callback:function(){
			initEnv();
			$("#themeList").theme({themeBase:"themes"});
			setTimeout(function() {$("#sidebar .toggleCollapse div").trigger("click");}, 10);
		}
	});
});
</script>
</head>

<body scroll="no">
	<div id="layout">
		<div id="header">
			<div class="headerNav">
				<a class="logo" href="http://j-ui.com">标志</a>
				<ul class="nav">
					<li id="switchEnvBox"><a href="javascript:">(<span>北京</span>)切换城市</a>
						<ul>
							<li><a href="sidebar_1.html">北京</a></li>
							<li><a href="sidebar_2.html">上海</a></li>
							<li><a href="sidebar_2.html">南京</a></li>
							<li><a href="sidebar_2.html">深圳</a></li>
							<li><a href="sidebar_2.html">广州</a></li>
							<li><a href="sidebar_2.html">天津</a></li>
							<li><a href="sidebar_2.html">杭州</a></li>
						</ul>
					</li>
					<li><a href="donation.html" target="dialog" height="400" title="捐赠 & DWZ学习视频">捐赠</a></li>
					<li><a href="changepwd.html" target="dialog" width="600">设置</a></li>
					<li><a href="http://www.cnblogs.com/dwzjs" target="_blank">博客</a></li>
					<li><a href="http://weibo.com/dwzui" target="_blank">微博</a></li>
					<li><a href="http://bbs.dwzjs.com" target="_blank">论坛</a></li>
					<li><a href="login.html">退出</a></li>
				</ul>
				<ul class="themeList" id="themeList">
					<li theme="default"><div class="selected">蓝色</div></li>
					<li theme="green"><div>绿色</div></li>
					<!--<li theme="red"><div>红色</div></li>-->
					<li theme="purple"><div>紫色</div></li>
					<li theme="silver"><div>银色</div></li>
					<li theme="azure"><div>天蓝</div></li>
				</ul>
			</div>

			<div id="navMenu">
				<ul>
					<li class="selected"><a href="sidebar_1.html"><span>资讯管理</span></a></li>
					<li><a href="sidebar_2.html"><span>订单管理</span></a></li>
					<li><a href="sidebar_1.html"><span>产品管理</span></a></li>
					<li><a href="sidebar_2.html"><span>会员管理</span></a></li>
					<li><a href="sidebar_1.html"><span>服务管理</span></a></li>
					<li><a href="sidebar_2.html"><span>系统设置</span></a></li>
				</ul>
			</div>
		</div>

		<div id="leftside">
			<div id="sidebar_s">
				<div class="collapse">
					<div class="toggleCollapse"><div></div></div>
				</div>
			</div>
			<div id="sidebar">
				<div class="toggleCollapse"><h2>主菜单</h2><div>收缩</div></div>

				<div class="accordion" fillSpace="sidebar">
					<div class="accordionHeader">
						<h2><span>Folder</span>界面组件</h2>
					</div>
					<div class="accordionContent">
						<ul class="tree treeFolder">
							<li><a href="tabsPage.html" target="navTab">主框架面板</a>
								<ul>
									<li><a href="main.html" target="navTab" rel="main">我的主页</a></li>
									<li><a href="demo/row-col.html" target="navTab" rel="row-col">栅格系统(Bootstrap)</a></li>
									<li><a href="http://www.baidu.com" target="navTab" rel="page1">页面一(外部页面)</a></li>
									<li><a href="demo_page2.html" target="navTab" rel="external" external="true">iframe navTab页面</a></li>
									<li><a href="demo_page1.html" target="navTab" rel="page1" fresh="false">替换页面一</a></li>
									<li><a href="demo_page2.html" target="navTab" rel="page2">页面二</a></li>
									<li><a href="demo_page4.html" target="navTab" rel="page3" title="页面三(自定义标签名)">页面三</a></li>
									<li><a href="demo_page4.html" target="navTab" rel="page4" fresh="false">测试页面(fresh="false")</a></li>
									<li><a href="w_editor.html" target="navTab">表单提交会话超时</a></li>
									<li><a href="demo/common/ajaxTimeout.json" target="navTab">navTab会话超时</a></li>
									<li><a href="demo/common/ajaxTimeout.json" target="dialog">dialog会话超时</a></li>
								</ul>
							</li>

							<li><a>常用组件</a>
								<ul>
									<li><a href="w_panel.html" target="navTab" rel="w_panel">面板</a></li>
									<li><a href="w_tabs.html" target="navTab" rel="w_tabs">选项卡面板</a></li>
									<li><a href="w_dialog.html" target="navTab" rel="w_dialog">弹出窗口</a></li>
									<li><a href="w_alert.html" target="navTab" rel="w_alert">提示窗口</a></li>
									<li><a href="w_list.html" target="navTab" rel="w_list">CSS表格容器</a></li>
									<li><a href="demo_page1.html" target="navTab" rel="w_table">表格容器</a></li>
									<li><a href="w_removeSelected.html" target="navTab" rel="w_table">表格数据库排序+批量删除</a></li>
									<li><a href="w_tree.html" target="navTab" rel="w_tree">树形菜单</a></li>
									<li><a href="w_accordion.html" target="navTab" rel="w_accordion">滑动菜单</a></li>
									<li><a href="w_editor.html" target="navTab" rel="w_editor">编辑器</a></li>
									<li><a href="w_datepicker.html" target="navTab" rel="w_datepicker">日期控件</a></li>
									<li><a href="demo/database/db_widget.html" target="navTab" rel="db">suggest+lookup+主从结构</a></li>
									<li><a href="demo/sortDrag/1.html" target="navTab" rel="sortDrag">单个sortDrag示例</a></li>
									<li><a href="demo/sortDrag/2.html" target="navTab" rel="sortDrag">多个sortDrag示例</a></li>
								</ul>
							</li>

							<li><a>表单组件</a>
								<ul>
									<li><a href="w_validation.html" target="navTab" rel="w_validation">表单验证</a></li>
									<li><a href="w_button.html" target="navTab" rel="w_button">按钮</a></li>
									<li><a href="w_textInput.html" target="navTab" rel="w_textInput">文本框/文本域</a></li>
									<li><a href="w_combox.html" target="navTab" rel="w_combox">下拉菜单</a></li>
									<li><a href="w_checkbox.html" target="navTab" rel="w_checkbox">多选框/单选框</a></li>
									<li><a href="demo_upload.html" target="navTab" rel="demo_upload">iframeCallback表单提交</a></li>
									<li><a href="w_uploadify.html" target="navTab" rel="w_uploadify">uploadify多文件上传</a></li>
								</ul>
							</li>
							<li><a>组合应用</a>
								<ul>
									<li><a href="demo/pagination/layout1.html" target="navTab" rel="pagination1">局部刷新分页1</a></li>
									<li><a href="demo/pagination/layout2.html" target="navTab" rel="pagination2">局部刷新分页2</a></li>
								</ul>
							</li>
							<li><a href="dwz.frag.xml" target="navTab" external="true">dwz.frag.xml</a></li>
						</ul>
					</div>
					<div class="accordionHeader">
						<h2><span>Folder</span>典型页面</h2>
					</div>
					<div class="accordionContent">
						<ul class="tree treeFolder treeCheck">
							<li><a href="demo_page1.html" target="navTab" rel="demo_page1">查询我的客户</a></li>
							<li><a href="demo_page1.html" target="navTab" rel="demo_page2">表单查询页面</a></li>
							<li><a href="demo_page4.html" target="navTab" rel="demo_page4">表单录入页面</a></li>
							<li><a href="demo_page5.html" target="navTab" rel="demo_page5">有文本输入的表单</a></li>
							<li><a href="javascript:;">有提示的表单输入页面</a>
								<ul>
									<li><a href="javascript:;">页面一</a></li>
									<li><a href="javascript:;">页面二</a></li>
								</ul>
							</li>
							<li><a href="javascript:;">选项卡和图形的页面</a>
								<ul>
									<li><a href="javascript:;">页面一</a></li>
									<li><a href="javascript:;">页面二</a></li>
								</ul>
							</li>
							<li><a href="javascript:;">选项卡和图形切换的页面</a></li>
							<li><a href="javascript:;">左右两个互动的页面</a></li>
							<li><a href="javascript:;">列表输入的页面</a></li>
							<li><a href="javascript:;">双层栏目列表的页面</a></li>
						</ul>
					</div>
					<div class="accordionHeader">
						<h2><span>Folder</span>流程演示</h2>
					</div>
					<div class="accordionContent">
						<ul class="tree">
							<li><a href="newPage1.html" target="dialog" rel="dlg_page">列表</a></li>
							<li><a href="newPage1.html" target="dialog" rel="dlg_page">列表</a></li>
							<li><a href="newPage1.html" target="dialog" rel="dlg_page2">列表</a></li>
							<li><a href="newPage1.html" target="dialog" rel="dlg_page2">列表</a></li>
							<li><a href="newPage1.html" target="dialog" rel="dlg_page2">列表</a></li>
						</ul>
					</div>
				</div>

			</div>
		</div>
		<div id="container">
			<div id="navTab" class="tabsPage">
				<div class="tabsPageHeader">
					<div class="tabsPageHeaderContent"><!-- 显示左右控制时添加 class="tabsPageHeaderMargin" -->
						<ul class="navTab-tab">
							<li tabid="main" class="main"><a href="javascript:;"><span><span class="home_icon">我的主页</span></span></a></li>
						</ul>
					</div>
					<div class="tabsLeft">left</div><!-- 禁用只需要添加一个样式 class="tabsLeft tabsLeftDisabled" -->
					<div class="tabsRight">right</div><!-- 禁用只需要添加一个样式 class="tabsRight tabsRightDisabled" -->
					<div class="tabsMore">more</div>
				</div>
				<ul class="tabsMoreList">
					<li><a href="javascript:;">我的主页</a></li>
				</ul>
				<div class="navTab-panel tabsPageContent layoutBox">
					<div class="page unitBox">
						<div class="accountInfo">
							<div class="alertInfo">
								<h2><a href="doc/dwz-user-guide.pdf" target="_blank">DWZ框架使用手册(PDF)</a></h2>
								<a href="doc/dwz-user-guide.swf" target="_blank">DWZ框架演示视频</a>
							</div>
							<div class="right">
								<p><a href="doc/dwz-user-guide.zip" target="_blank" style="line-height:19px">DWZ框架使用手册(CHM)</a></p>
								<p><a href="doc/dwz-ajax-develop.swf" target="_blank" style="line-height:19px">DWZ框架Ajax开发视频教材</a></p>
							</div>
							<p><span>DWZ富客户端框架</span></p>
							<p>DWZ官方微博:<a href="http://weibo.com/dwzui" target="_blank">http://weibo.com/dwzui</a></p>
						</div>
						<div class="pageFormContent" layoutH="80">
							<iframe width="100%" height="430" class="share_self" frameborder="0" scrolling="no" src="//widget.weibo.com/weiboshow/index.php?width=0&height=430&fansRow=2&ptype=1&speed=300&skin=1&isTitle=0&noborder=1&isWeibo=1&isFans=0&uid=1739071261&verifier=c683dfe7"></iframe>
						</div>
					</div>

				</div>
			</div>
		</div>

	</div>

	<div id="footer">Copyright &copy; 2020 <a href="demo_page2.html" target="dialog">DWZ团队</a></div>

</body>
</html>


================================================
FILE: js/dwz.accordion.js
================================================
/**
 * @author Roger Wu
 */

(function($) {
var jmenus = new Map();
// If the DWZ scope is not available, add it
$.dwz = $.dwz || {};

$(window).resize(function(){
	setTimeout(function(){
		for (var i=0; i<jmenus.size();i++){
			fillSpace(jmenus.element(i).key);
		}
	}, 100);
});
$.fn.extend({
	accordion: function(options, data) {

		var args = Array.prototype.slice.call(arguments, 1);

		return this.each(function() {
			if (options.fillSpace) jmenus.put(options.fillSpace, this);
			if (typeof options == "string") {
				var accordion = $.data(this, "dwz-accordion");
				accordion[options].apply(accordion, args);
			// INIT with optional options
			} else if (!$(this).is(".dwz-accordion"))
				$.data(this, "dwz-accordion", new $.dwz.accordion(this, options));
		});
	},
	/**
	 * deprecated, use accordion("activate", index) instead
	 * @param {Object} index
	 */
	activate: function(index) {
		return this.accordion("activate", index);
	}
});

$.dwz.accordion = function(container, options) {

	// setup configuration
	this.options = options = $.extend({}, $.dwz.accordion.defaults, options);
	this.element = container;

	$(container).addClass("dwz-accordion");
	if ( options.navigation ) {
		var current = $(container).find("a").filter(options.navigationFilter);
		if ( current.length ) {
			if ( current.filter(options.header).length ) {
				options.active = current;
			} else {
				options.active = current.parent().parent().prev();
				current.addClass("current");
			}
		}
	}
	// calculate active if not specified, using the first header
	options.headers = $(container).find(options.header);
	options.active = findActive(options.headers, options.active);

	if ( options.fillSpace ) {
		fillSpace(options.fillSpace);
	} else if ( options.autoheight ) {
		var maxHeight = 0;
		options.headers.next().each(function() {
			maxHeight = Math.max(maxHeight, $(this).outerHeight());
		}).height(maxHeight);
	}

	options.headers
		.not(options.active || "")
		.next()
		.hide();
	options.active.find("h2").addClass(options.selectedClass);

	if (options.event)
		$(container).bind((options.event) + ".dwz-accordion", clickHandler);
};

$.dwz.accordion.prototype = {
	activate: function(index) {
		// call clickHandler with custom event
		clickHandler.call(this.element, {
			target: findActive( this.options.headers, index )[0]
		});
	},

	enable: function() {
		this.options.disabled = false;
	},
	disable: function() {
		this.options.disabled = true;
	},
	destroy: function() {
		this.options.headers.next().css("display", "");
		if ( this.options.fillSpace || this.options.autoheight ) {
			this.options.headers.next().css("height", "");
		}
		$.removeData(this.element, "dwz-accordion");
		$(this.element).removeClass("dwz-accordion").unbind(".dwz-accordion");
	}
}

function scopeCallback(callback, scope) {
	return function() {
		return callback.apply(scope, arguments);
	};
}

function completed(cancel) {
	// if removed while animated data can be empty
	if (!$.data(this, "dwz-accordion"))
		return;
	var instance = $.data(this, "dwz-accordion");
	var options = instance.options;
	options.running = cancel ? 0 : --options.running;
	if ( options.running )
		return;
	if ( options.clearStyle ) {
		options.toShow.add(options.toHide).css({
			height: "",
			overflow: ""
		});
	}
	$(this).triggerHandler("change.dwz-accordion", [options.data], options.change);
}

function fillSpace(key){
	var obj = jmenus.get(key);
	if (!obj) return;

	var parent = $(obj).parent();
	var height = parent.height() - (($(".accordionHeader", obj).length) * ($(".accordionHeader:first-child", obj).outerHeight())) -2;

	var os = parent.children().not(obj);
	$.each(os, function(i){
		height -= $(os[i]).outerHeight();
	});
	$(".accordionContent",obj).height(height);
}

function toggle(toShow, toHide, data, clickedActive, down) {
	var options = $.data(this, "dwz-accordion").options;
	options.toShow = toShow;
	options.toHide = toHide;
	options.data = data;
	var complete = scopeCallback(completed, this);

	// count elements to animate
	options.running = toHide.length == 0 ? toShow.length : toHide.length;

	if ( options.animated ) {
		if ( !options.alwaysOpen && clickedActive ) {
			$.dwz.accordion.animations[options.animated]({
				toShow: jQuery([]),
				toHide: toHide,
				complete: complete,
				down: down,
				autoheight: options.autoheight
			});
		} else {
			$.dwz.accordion.animations[options.animated]({
				toShow: toShow,
				toHide: toHide,
				complete: complete,
				down: down,
				autoheight: options.autoheight
			});
		}
	} else {
		if ( !options.alwaysOpen && clickedActive ) {
			toShow.toggle();
		} else {
			toHide.hide();
			toShow.show();
		}
		complete(true);
	}
}

function clickHandler(event) {
	var options = $.data(this, "dwz-accordion").options;
	if (options.disabled)
		return false;

	// called only when using activate(false) to close all parts programmatically
	if ( !event.target && !options.alwaysOpen ) {
		options.active.find("h2").toggleClass(options.selectedClass);
		var toHide = options.active.next(),
			data = {
				instance: this,
				options: options,
				newHeader: jQuery([]),
				oldHeader: options.active,
				newContent: jQuery([]),
				oldContent: toHide
			},
			toShow = options.active = $([]);
		toggle.call(this, toShow, toHide, data );
		return false;
	}
	// get the click target
	var clicked = $(event.target);

	// due to the event delegation model, we have to check if one
	// of the parent elements is our actual header, and find that
	if ( clicked.parents(options.header).length )
		while ( !clicked.is(options.header) )
			clicked = clicked.parent();

	var clickedActive = clicked[0] == options.active[0];

	// if animations are still active, or the active header is the target, ignore click
	if (options.running || (options.alwaysOpen && clickedActive))
		return false;
	if (!clicked.is(options.header))
		return;

	// switch classes
	options.active.find("h2").toggleClass(options.selectedClass);
	if ( !clickedActive ) {
		clicked.find("h2").addClass(options.selectedClass);
	}

	// find elements to show and hide
	var toShow = clicked.next(),
		toHide = options.active.next(),
		//data = [clicked, options.active, toShow, toHide],
		data = {
			instance: this,
			options: options,
			newHeader: clicked,
			oldHeader: options.active,
			newContent: toShow,
			oldContent: toHide
		},
		down = options.headers.index( options.active[0] ) > options.headers.index( clicked[0] );

	options.active = clickedActive ? $([]) : clicked;
	toggle.call(this, toShow, toHide, data, clickedActive, down );

	return false;
};

function findActive(headers, selector) {
	return selector != undefined
		? typeof selector == "number"
			? headers.filter(":eq(" + selector + ")")
			: headers.not(headers.not(selector))
		: selector === false
			? $([])
			: headers.filter(":eq(0)");
}

$.extend($.dwz.accordion, {
	defaults: {
		selectedClass: "collapsable",
		alwaysOpen: true,
		animated: 'slide',
		event: "click",
		header: ".accordionHeader",
		autoheight: true,
		running: 0,
		navigationFilter: function() {
			return this.href.toLowerCase() == location.href.toLowerCase();
		}
	},
	animations: {
		slide: function(options, additions) {
			options = $.extend({
				easing: "swing",
				duration: 300
			}, options, additions);
			if ( !options.toHide.length ) {
				options.toShow.animate({height: "show"}, options);
				return;
			}
			var hideHeight = options.toHide.height(),
				showHeight = options.toShow.height(),
				difference = showHeight / hideHeight;
			options.toShow.css({ height: 0}).show();
			options.toHide.filter(":hidden").each(options.complete).end().filter(":visible").animate({height:"hide"},{
				step: function(now) {
					var current = (hideHeight - now) * difference;
					if (/msie|opera/.test(navigator.userAgent.toLowerCase())) {
						current = Math.ceil(current);
					}
					options.toShow.height( current );
				},
				duration: options.duration,
				easing: options.easing,
				complete: function() {
					if ( !options.autoheight ) {
						options.toShow.css({height:"auto"});
					}
					options.toShow.css({overflow:"auto"});
					options.complete();
				}
			});
		},
		bounceslide: function(options) {
			this.slide(options, {
				easing: options.down ? "bounceout" : "swing",
				duration: options.down ? 1000 : 200
			});
		},
		easeslide: function(options) {
			this.slide(options, {
				easing: "easeinout",
				duration: 700
			})
		}
	}
});
})(jQuery);


================================================
FILE: js/dwz.ajax.js
================================================
/**
 * @author 张慧华 z@j-ui.com
 *
 */

/**
 * 普通ajax表单提交
 * @param {Object} form
 * @param {Object} callback
 * @param {String} confirmMsg 提示确认信息
 */
function validateCallback(form, callback, confirmMsg) {
	var $form = $(form);

	if (!$form.valid()) {
		return false;
	}

	var _submitFn = function(){
		$form.find(':focus').blur();

		var url = $form.attr("action");
		$.ajax({
			type: url.endsWith('.json')? 'GET' : form.method || 'POST',
			url: url,
			data: $form.serializeArray(),
			dataType: "json",
			cache: false,
			success: callback || DWZ.ajaxDone,
			error: DWZ.ajaxError
		});
	}

	if (confirmMsg) {
		alertMsg.confirm(confirmMsg, {okCall: _submitFn});
	} else {
		_submitFn();
	}

	return false;
}
/**
 * 带文件上传的ajax表单提交
 * @param {Object} form
 * @param {Object} callback
 */
function iframeCallback(form, callback){
	var $form = $(form), $iframe = $("#callbackframe");
	if(!$form.valid()) {return false;}

	if ($iframe.length == 0) {
		$iframe = $('<iframe id="callbackframe" name="callbackframe" src="about:blank" style="display:none"></iframe>').appendTo('body');
	}
	if(!form.ajax) {
		$form.append('<input type="hidden" name="ajax" value="1" />');
	}
	form.target = 'callbackframe';

	$form.find(':focus').blur();

	_iframeResponse($iframe[0], callback || DWZ.ajaxDone);
}
function _iframeResponse(iframe, callback, dataType){
	var $iframe = $(iframe), $document = $(document);

	$document.trigger("ajaxStart");

	$iframe.bind("load", function(event){
		$iframe.unbind("load");
		$document.trigger("ajaxStop");

		if (iframe.src == "javascript:'%3Chtml%3E%3C/html%3E';" || // For Safari
			iframe.src == "javascript:'<html></html>';") { // For FF, IE
			return;
		}

		var doc = iframe.contentDocument || iframe.document;

		// fixing Opera 9.26,10.00
		if (doc.readyState && doc.readyState != 'complete') return;
		// fixing Opera 9.64
		if (doc.body && doc.body.innerHTML == "false") return;

		var response;

		if (doc.XMLDocument) {
			// response is a xml document Internet Explorer property
			response = doc.XMLDocument;
		} else if (doc.body){
			try{
				if (dataType == 'html') {
					response = $iframe.contents().find("body").html();
				} else {
					response = $iframe.contents().find("body").text();
					response = jQuery.parseJSON(response);
				}
			} catch (e){ // response is html document or plain text
				response = doc.body.innerHTML;
			}
		} else {
			// response is a xml document
			response = doc;
		}

		callback(response);
	});
}

/**
 * navTabAjaxDone是DWZ框架中预定义的表单提交回调函数.
 * 服务器转回navTabId可以把那个navTab标记为reloadFlag=1, 下次切换到那个navTab时会重新载入内容.
 * callbackType如果是closeCurrent就会关闭当前tab
 * 只有callbackType="forward"时需要forwardUrl值
 * navTabAjaxDone这个回调函数基本可以通用了,如果还有特殊需要也可以自定义回调函数.
 * 如果表单提交只提示操作是否成功, 就可以不指定回调函数. 框架会默认调用DWZ.ajaxDone()
 * <form action="/user.do?method=save" onsubmit="return validateCallback(this, navTabAjaxDone)">
 *
 * form提交后返回json数据结构statusCode=DWZ.statusCode.ok表示操作成功, 做页面跳转等操作. statusCode=DWZ.statusCode.error表示操作失败, 提示错误原因.
 * statusCode=DWZ.statusCode.timeout表示session超时,下次点击时跳转到DWZ.loginUrl
 * {"statusCode":"200", "message":"操作成功", "navTabId":"navNewsLi", "forwardUrl":"", "callbackType":"closeCurrent", "rel"."xxxId"}
 * {"statusCode":"300", "message":"操作失败"}
 * {"statusCode":"301", "message":"会话超时"}
 *
 */
function navTabAjaxDone(json){
	DWZ.ajaxDone(json);
	if (json[DWZ.keys.statusCode] == DWZ.statusCode.ok){
		if (json.navTabId){ //把指定navTab页面标记为需要“重新载入”。注意navTabId不能是当前navTab页面的
			navTab.reloadFlag(json.navTabId);
		} else { //重新载入当前navTab页面
			var $pagerForm = $("#pagerForm", navTab.getCurrentPanel());
			var args = $pagerForm.length>0 ? $pagerForm.serializeArray() : {}
			navTabPageBreak(args, json.rel);
		}

		if ("closeCurrent" == json.callbackType) {
			setTimeout(function(){navTab.closeCurrentTab(json.navTabId);}, 100);
		} else if ("forward" == json.callbackType) {
			navTab.reload(json.forwardUrl);
		} else if ("forwardConfirm" == json.callbackType) {
			alertMsg.confirm(json.confirmMsg || DWZ.msg("forwardConfirmMsg"), {
				okCall: function(){
					navTab.reload(json.forwardUrl);
				},
				cancelCall: function(){
					navTab.closeCurrentTab(json.navTabId);
				}
			});
		} else {
			navTab.getCurrentPanel().find(":input[initValue]").each(function(){
				var initVal = $(this).attr("initValue");
				$(this).val(initVal);
			});
		}
	}
}

/**
 * dialog上的表单提交回调函数
 * 当前navTab页面有pagerForm就重新加载
 * 服务器转回navTabId,可以重新载入指定的navTab. statusCode=DWZ.statusCode.ok表示操作成功, 自动关闭当前dialog
 *
 * form提交后返回json数据结构,json格式和navTabAjaxDone一致
 */
function dialogAjaxDone(json){
	DWZ.ajaxDone(json);
	if (json[DWZ.keys.statusCode] == DWZ.statusCode.ok){
		if (json.navTabId){
			navTab.reload(json.forwardUrl, {navTabId: json.navTabId});
		} else {
			var $pagerForm = $("#pagerForm", navTab.getCurrentPanel());
			var args = $pagerForm.length>0 ? $pagerForm.serializeArray() : {}
			navTabPageBreak(args, json.rel);
		}
		if ("closeCurrent" == json.callbackType) {
			$.pdialog.closeCurrent();
		}
	}
}

/**
 * 处理navTab上的查询, 会重新载入当前navTab
 * @param {Object} form
 */
function navTabSearch(form, navTabId){
	var $form = $(form);
	if (form[DWZ.pageInfo.pageNum]) form[DWZ.pageInfo.pageNum].value = 1;
	navTab.reload($form.attr('action'), {data: $form.serializeArray(), navTabId:navTabId});
	return false;
}
/**
 * 处理dialog弹出层上的查询, 会重新载入当前dialog
 * @param {Object} form
 */
function dialogSearch(form){
	var $form = $(form);
	if (form[DWZ.pageInfo.pageNum]) form[DWZ.pageInfo.pageNum].value = 1;
	$.pdialog.reload($form.attr('action'), {data: $form.serializeArray()});
	return false;
}
function dwzSearch(form, targetType){
	if (targetType == "dialog") dialogSearch(form);
	else navTabSearch(form);
	return false;
}
/**
 * 处理div上的局部查询, 会重新载入指定div
 * @param {Object} form
 */
function divSearch(form, rel){
	var $form = $(form);
	if (form[DWZ.pageInfo.pageNum]) form[DWZ.pageInfo.pageNum].value = 1;
	if (rel) {
		var $box = $("#" + rel);
		$box.ajaxUrl({
			type:"POST", url:$form.attr("action"), data: $form.serializeArray(), callback:function(){
				$box.find("[layoutH]").layoutH();
			}
		});
	}
	return false;
}
/**
 *
 * @param {Object} args {pageNum:"",numPerPage:"",orderField:"",orderDirection:""}
 * @param String formId 分页表单选择器,非必填项默认值是 "pagerForm"
 */
function _getPagerForm($parent, args) {
	var form = $("#pagerForm", $parent).get(0);

	if (form) {
		if (args["pageNum"]) form[DWZ.pageInfo.pageNum].value = args["pageNum"];
		if (args["numPerPage"]) form[DWZ.pageInfo.numPerPage].value = args["numPerPage"];
		if (args["orderField"]) form[DWZ.pageInfo.orderField].value = args["orderField"];
		if (args["orderDirection"] && form[DWZ.pageInfo.orderDirection]) form[DWZ.pageInfo.orderDirection].value = args["orderDirection"];
	}

	return form;
}


/**
 * 处理navTab中的分页和排序
 * targetType: navTab 或 dialog
 * rel: 可选 用于局部刷新div id号
 * data: pagerForm参数 {pageNum:"n", numPerPage:"n", orderField:"xxx", orderDirection:""}
 * callback: 加载完成回调函数
 */
function dwzPageBreak(options){
	var op = $.extend({ targetType:"navTab", rel:"", data:{pageNum:"", numPerPage:"", orderField:"", orderDirection:""}, callback:null}, options);
	var $parent = op.targetType == "dialog" ? $.pdialog.getCurrent() : navTab.getCurrentPanel();

	if (op.rel) {
		var $box = $parent.find("#" + op.rel);
		var form = _getPagerForm($box, op.data);
		if (form) {
			$box.ajaxUrl({
				type:"POST", url:$(form).attr("action"), data: $(form).serializeArray(), callback:function(){
					$box.find("[layoutH]").layoutH();
				}
			});
		}
	} else {
		var form = _getPagerForm($parent, op.data);
		var params = $(form).serializeArray();

		if (op.targetType == "dialog") {
			if (form) $.pdialog.reload($(form).attr("action"), {data: params, callback: op.callback});
		} else {
			if (form) navTab.reload($(form).attr("action"), {data: params, callback: op.callback});
		}
	}
}
/**
 * 处理navTab中的分页和排序
 * @param args {pageNum:"n", numPerPage:"n", orderField:"xxx", orderDirection:""}
 * @param rel: 可选 用于局部刷新div id号
 */
function navTabPageBreak(args, rel){
	dwzPageBreak({targetType:"navTab", rel:rel, data:args});
}
/**
 * 处理dialog中的分页和排序
 * 参数同 navTabPageBreak
 */
function dialogPageBreak(args, rel){
	dwzPageBreak({targetType:"dialog", rel:rel, data:args});
}


function ajaxTodo(url, callback){
	var $callback = callback || navTabAjaxDone;
	if (! $.isFunction($callback)) $callback = eval('(' + callback + ')');
	$.ajax({
		type:'POST',
		url:url,
		dataType:"json",
		cache: false,
		success: $callback,
		error: DWZ.ajaxError
	});
}

/**
 * http://www.uploadify.com/documentation/uploadify/onqueuecomplete/
 */
function uploadifyQueueComplete(queueData){

	var msg = "The total number of files uploaded: "+queueData.uploadsSuccessful+"<br/>"
		+ "The total number of errors while uploading: "+queueData.uploadsErrored+"<br/>"
		+ "The total number of bytes uploaded: "+queueData.queueBytesUploaded+"<br/>"
		+ "The average speed of all uploaded files: "+queueData.averageSpeed;

	if (queueData.uploadsErrored) {
		alertMsg.error(msg);
	} else {
		alertMsg.correct(msg);
	}
}
/**
 * http://www.uploadify.com/documentation/uploadify/onuploadsuccess/
 */
function uploadifySuccess(file, data, response){
	alert(data)
}

/**
 * http://www.uploadify.com/documentation/uploadify/onuploaderror/
 */
function uploadifyError(file, errorCode, errorMsg) {
	alertMsg.error(errorCode+": "+errorMsg);
}


/**
 * http://www.uploadify.com/documentation/
 * @param {Object} event
 * @param {Object} queueID
 * @param {Object} fileObj
 * @param {Object} errorObj
 */
function uploadifyError(event, queueId, fileObj, errorObj){
	alert("event:" + event + "\nqueueId:" + queueId + "\nfileObj.name:"
		+ fileObj.name + "\nerrorObj.type:" + errorObj.type + "\nerrorObj.info:" + errorObj.info);
}

DWZ.pargerFormExport = function (url, $form) {

	if ($form.length == 0) {
		window.location = url;
		return;
	}

	var $iframe = $("#callbackframe");
	if ($iframe.length == 0) {
		$iframe = $("<iframe id='callbackframe' name='callbackframe' src='about:blank' style='display:none'></iframe>").appendTo("body");
	}

	var pagerFormUrl = $form[0].action,
		pagerFormOnSubmit = $form.attr('onsubmit');

	$form[0].action = url;
	$form[0].target = "callbackframe";
	$form.removeAttr('onsubmit');
	$form.submit();

	$form[0].action = pagerFormUrl;
	$form.attr('onsubmit', pagerFormOnSubmit);
};

$.fn.extend({
	ajaxTodo:function(){
		return this.each(function(){
			var $this = $(this);
			$this.click(function(event){
				if ($this.hasClass('disabled') || $this.hasClass('buttonDisabled')) {
					return false;
				}

				var url = unescape($this.attr("href")).replaceTmById($(event.target).parents(".unitBox:first"));
				DWZ.debug(url);
				if (!url.isFinishedTm()) {
					alertMsg.error($this.attr("warn") || DWZ.msg("alertSelectMsg"));
					return false;
				}
				var title = $this.attr("title");
				if (title) {
					alertMsg.confirm(title, {
						okCall: function(){
							ajaxTodo(url, $this.attr("callback"));
						}
					});
				} else {
					ajaxTodo(url, $this.attr("callback"));
				}
				event.preventDefault();
			});
		});
	},
	dwzExport: function(){
		function _doExport($this) {
			var $p = $this.attr("targetType") == "dialog" ? $.pdialog.getCurrent() : navTab.getCurrentPanel();
			var $form = $("#pagerForm", $p);
			var url = $this.attr("href");

			DWZ.pargerFormExport(url, $form);
		}

		return this.each(function(){
			var $this = $(this);
			$this.click(function(event){
				if ($this.hasClass('disabled') || $this.hasClass('buttonDisabled')) {
					return false;
				}

				var title = $this.attr("title");
				if (title) {
					alertMsg.confirm(title, {
						okCall: function(){_doExport($this);}
					});
				} else {_doExport($this);}

				event.preventDefault();
			});
		});
	}
});

/**
 * The W3C XMLHttpRequest specification dictates that the charset is always UTF-8; specifying another charset will not force the browser to change the encoding.
 * iframe模拟ajax load, 解决GBK页面ajax load乱码问题
 *
 * @param url
 * @param callback
 */
$.iframeLoad = function(url, callback) {

	var $form = $('<form method="post" action="'+url+'" target="callbackframe" style="display: none"><button type="submit">submit</button></form>').appendTo('body'),
		$iframe = $("#callbackframe");

	if ($iframe.length == 0) {
		$iframe = $('<iframe id="callbackframe" name="callbackframe" src="about:blank" style="display:none"></iframe>').appendTo('body');
	}

	_iframeResponse($iframe[0], function(response) {
		$form.remove();
		if (callback) callback.call($iframe, response);
	}, 'html');

	$form.submit();
};

$.fn.iframeLoad = function(url, callback) {
	return this.each(function(){
		var $box = $(this);

		$.iframeLoad(url, function(response){
			$box.html(response).initUI();
			if (callback) callback.call($box, response);
		});
	});
};


================================================
FILE: js/dwz.alertMsg.js
================================================
/**
 * @author 张慧华 z@j-ui.com
 */
$.setRegional("alertMsg", {
	title:{error:"Error", info:"Information", warn:"Warning", correct:"Successful", confirm:"Confirmation"},
	butMsg:{ok:"OK", yes:"Yes", no:"No", cancel:"Cancel"}
});
var alertMsg = {
	_boxId: "#aler
Download .txt
gitextract_ohlqek00/

├── .gitignore
├── LICENSE.txt
├── README.md
├── bin/
│   ├── ESC.wsf
│   ├── gzjs-esc.bat
│   ├── gzjs.sh
│   └── yuicompressor-2.4.8.jar
├── changepwd.html
├── chart/
│   └── test/
│       ├── barchart.html
│       ├── hbarchart.html
│       ├── linechart.html
│       ├── linechart2.html
│       └── piechart.html
├── demo/
│   ├── baidu_map.html
│   ├── baidu_map_iframe.html
│   ├── combox/
│   │   ├── city_all.html
│   │   ├── city_bj.html
│   │   └── city_sh.html
│   ├── common/
│   │   ├── ajaxDone.json
│   │   ├── ajaxDone_loadPage_error.json
│   │   ├── ajaxDone_w_list.json
│   │   ├── ajaxTimeout.json
│   │   └── dwz-team.xls
│   ├── database/
│   │   ├── db_attachmentBrightBack.html
│   │   ├── db_attachmentLookup.html
│   │   ├── db_lookupSuggest.html
│   │   ├── db_select.html
│   │   ├── db_widget.html
│   │   ├── dwzOrgLookup.html
│   │   ├── dwzOrgLookup2.html
│   │   ├── treeBringBack.html
│   │   └── treeLookup.html
│   ├── pagination/
│   │   ├── ajaxDone1.html
│   │   ├── ajaxDone2.html
│   │   ├── ajaxDone3.html
│   │   ├── dialog1.html
│   │   ├── dialog2.html
│   │   ├── layout1.html
│   │   ├── layout2.html
│   │   ├── list1.html
│   │   ├── list2.html
│   │   └── list3.html
│   ├── row-col.html
│   └── sortDrag/
│       ├── 1.html
│       ├── 2.html
│       └── form.html
├── demo_page1.html
├── demo_page2.html
├── demo_page4.html
├── demo_page5.html
├── demo_page6.html
├── demo_upload.html
├── doc/
│   ├── dwz-user-guide.docx
│   └── git.txt
├── donation.html
├── dwz.frag.xml
├── index.html
├── index_menu.html
├── js/
│   ├── dwz.accordion.js
│   ├── dwz.ajax.js
│   ├── dwz.alertMsg.js
│   ├── dwz.barDrag.js
│   ├── dwz.checkbox.js
│   ├── dwz.combox.js
│   ├── dwz.contextmenu.js
│   ├── dwz.core.js
│   ├── dwz.cssTable.js
│   ├── dwz.database.js
│   ├── dwz.datepicker.js
│   ├── dwz.dialog.js
│   ├── dwz.dialogDrag.js
│   ├── dwz.drag.js
│   ├── dwz.effects.js
│   ├── dwz.file.js
│   ├── dwz.history.js
│   ├── dwz.miscDrag.js
│   ├── dwz.navTab.js
│   ├── dwz.pagination.js
│   ├── dwz.panel.js
│   ├── dwz.print.js
│   ├── dwz.regional.zh.js
│   ├── dwz.resize.js
│   ├── dwz.scrollCenter.js
│   ├── dwz.selectedLoad.js
│   ├── dwz.sortDrag.js
│   ├── dwz.stable.js
│   ├── dwz.switchEnv.js
│   ├── dwz.tab.js
│   ├── dwz.taskBar.js
│   ├── dwz.theme.js
│   ├── dwz.tree.js
│   ├── dwz.ui.js
│   ├── dwz.util.date.js
│   ├── dwz.util.number.js
│   ├── dwz.validate.method.js
│   ├── jquery-1.12.4.js
│   ├── jquery-3.4.1.js
│   ├── jquery.bgiframe.js
│   ├── jquery.cookie.js
│   ├── jquery.easing.1.3.js
│   ├── jquery.validate.js
│   └── speedup.js
├── login.html
├── login_dialog.html
├── main.html
├── miscDrag.html
├── miscDrag2.html
├── miscDragScreen1.html
├── newPage1.html
├── newPage2.html
├── newPage3.html
├── sidebar_1.html
├── sidebar_2.html
├── tabsPage.html
├── test_print.html
├── themes/
│   ├── azure/
│   │   └── style.css
│   ├── css/
│   │   ├── core.css
│   │   ├── ieHack.css
│   │   ├── login.css
│   │   └── print.css
│   ├── default/
│   │   └── style.css
│   ├── green/
│   │   └── style.css
│   ├── miscDrag/
│   │   └── screen.css
│   ├── purple/
│   │   └── style.css
│   └── silver/
│       └── style.css
├── uploadify/
│   ├── Change Log.txt
│   ├── css/
│   │   └── uploadify.css
│   └── scripts/
│       ├── jquery.uploadify.js
│       └── uploadify.swf
├── validate_remote.html
├── w_accordion.html
├── w_alert.html
├── w_button.html
├── w_checkbox.html
├── w_combox.html
├── w_datepicker.html
├── w_dialog.html
├── w_editor.html
├── w_html5_upload.html
├── w_list.html
├── w_panel.html
├── w_removeSelected.html
├── w_tabs.html
├── w_textInput.html
├── w_tree.html
├── w_uploadify.html
├── w_validation.html
├── window_open.html
└── xheditor/
    ├── xheditor_emot/
    │   ├── default/
    │   │   └── config.txt
    │   ├── ipb/
    │   │   └── config.txt
    │   └── pidgin/
    │       └── config.txt
    ├── xheditor_lang/
    │   ├── en.js
    │   ├── zh-cn.js
    │   └── zh-tw.js
    ├── xheditor_plugins/
    │   ├── html2markdown.js
    │   ├── htmldomparser.js
    │   ├── multiupload/
    │   │   ├── multiupload.css
    │   │   ├── multiupload.html
    │   │   ├── multiupload.js
    │   │   └── swfupload/
    │   │       ├── swfupload.js
    │   │       └── swfupload.swf
    │   ├── showdown.js
    │   └── ubb.js
    └── xheditor_skin/
        ├── default/
        │   ├── iframe.css
        │   └── ui.css
        ├── nostyle/
        │   ├── iframe.css
        │   └── ui.css
        ├── o2007blue/
        │   ├── iframe.css
        │   └── ui.css
        ├── o2007silver/
        │   ├── iframe.css
        │   └── ui.css
        └── vista/
            ├── iframe.css
            └── ui.css
Download .txt
SYMBOL INDEX (270 symbols across 26 files)

FILE: js/dwz.accordion.js
  function scopeCallback (line 106) | function scopeCallback(callback, scope) {
  function completed (line 112) | function completed(cancel) {
  function fillSpace (line 130) | function fillSpace(key){
  function toggle (line 144) | function toggle(toShow, toHide, data, clickedActive, down) {
  function clickHandler (line 183) | function clickHandler(event) {
  function findActive (line 247) | function findActive(headers, selector) {

FILE: js/dwz.ajax.js
  function validateCallback (line 12) | function validateCallback(form, callback, confirmMsg) {
  function iframeCallback (line 47) | function iframeCallback(form, callback){
  function _iframeResponse (line 63) | function _iframeResponse(iframe, callback, dataType){
  function navTabAjaxDone (line 125) | function navTabAjaxDone(json){
  function dialogAjaxDone (line 165) | function dialogAjaxDone(json){
  function navTabSearch (line 185) | function navTabSearch(form, navTabId){
  function dialogSearch (line 195) | function dialogSearch(form){
  function dwzSearch (line 201) | function dwzSearch(form, targetType){
  function divSearch (line 210) | function divSearch(form, rel){
  function _getPagerForm (line 228) | function _getPagerForm($parent, args) {
  function dwzPageBreak (line 249) | function dwzPageBreak(options){
  function navTabPageBreak (line 279) | function navTabPageBreak(args, rel){
  function dialogPageBreak (line 286) | function dialogPageBreak(args, rel){
  function ajaxTodo (line 291) | function ajaxTodo(url, callback){
  function uploadifyQueueComplete (line 307) | function uploadifyQueueComplete(queueData){
  function uploadifySuccess (line 323) | function uploadifySuccess(file, data, response){
  function uploadifyError (line 330) | function uploadifyError(file, errorCode, errorMsg) {
  function uploadifyError (line 342) | function uploadifyError(event, queueId, fileObj, errorObj){
  function _doExport (line 401) | function _doExport($this) {

FILE: js/dwz.barDrag.js
  function _hideBar (line 41) | function _hideBar() {

FILE: js/dwz.contextmenu.js
  function display (line 40) | function display(index, trigger, e, options) {
  function hide (line 68) | function hide() {

FILE: js/dwz.core.js
  function getAltBox (line 300) | function getAltBox(){
  function altBoxCss (line 303) | function altBoxCss(opacity){
  function Map (line 440) | function Map(){

FILE: js/dwz.database.js
  function _show (line 109) | function _show(event){
  function _select (line 188) | function _select($item){
  function _close (line 193) | function _close(){
  function delDbData (line 268) | function delDbData(){
  function initSuffix (line 315) | function initSuffix($tbody) {
  function tdHtml (line 333) | function tdHtml(field){
  function trHtml (line 387) | function trHtml(fields){
  function _doPost (line 414) | function _doPost(){

FILE: js/dwz.datepicker.js
  function changeTmMenu (line 23) | function changeTmMenu(sltClass){
  function clickTmMenu (line 31) | function clickTmMenu($input, type){
  function keydownInt (line 39) | function keydownInt(e){
  function changeTm (line 42) | function changeTm($input, type){
  function generateCalendar (line 60) | function generateCalendar(dp){
  function closeCalendar (line 165) | function closeCalendar() {

FILE: js/dwz.file.js
  function readAsDataURL (line 7) | function readAsDataURL(img, file, maxW, maxH){
  function previewUploadImg (line 34) | function previewUploadImg($uploadWrap, files, maxW, maxH) {
  function previewUploadImg2 (line 66) | function previewUploadImg2($uploadWrap, files, maxW, maxH) {

FILE: js/dwz.pagination.js
  function _bindEvent (line 64) | function _bindEvent($target, pageNum, targetType, rel){

FILE: js/dwz.selectedLoad.js
  function _getIds (line 8) | function _getIds(selectedIds, targetType){
  function _doPost (line 30) | function _doPost(){

FILE: js/dwz.switchEnv.js
  function _show (line 48) | function _show($box){
  function _hide (line 52) | function _hide($box){
  function _handler (line 57) | function _handler(event){

FILE: js/dwz.tab.js
  function initTab (line 20) | function initTab(jT){
  function switchTab (line 83) | function switchTab(jT, iTabIndex){

FILE: js/dwz.tree.js
  function addSpace (line 159) | function addSpace(level,node) {

FILE: js/dwz.ui.js
  function initEnv (line 1) | function initEnv() {
  function initLayout (line 43) | function initLayout(){
  function initUI (line 53) | function initUI($p){

FILE: js/dwz.util.date.js
  function LZ (line 36) | function LZ(x) {return(x<0||x>9?"":"0")+x}
  function formatDate (line 45) | function formatDate(date,format) {
  function _isInteger (line 101) | function _isInteger(val) {
  function _getInt (line 104) | function _getInt(str,i,minlength,maxlength) {
  function parseDate (line 122) | function parseDate(val,format) {
  function replaceTmEval (line 254) | function replaceTmEval(data){

FILE: js/dwz.util.number.js
  function formatCurrency (line 7) | function formatCurrency(num) {
  function parseCurrency (line 24) | function parseCurrency(str) {
  function amountInWords (line 33) | function amountInWords(dValue, maxDec){

FILE: js/jquery-1.12.4.js
  function isArrayLike (line 563) | function isArrayLike( obj ) {
  function Sizzle (line 772) | function Sizzle( selector, context, results, seed ) {
  function createCache (line 912) | function createCache() {
  function markFunction (line 930) | function markFunction( fn ) {
  function assert (line 939) | function assert( fn ) {
  function addHandle (line 961) | function addHandle( attrs, handler ) {
  function siblingCheck (line 976) | function siblingCheck( a, b ) {
  function createInputPseudo (line 1003) | function createInputPseudo( type ) {
  function createButtonPseudo (line 1014) | function createButtonPseudo( type ) {
  function createPositionalPseudo (line 1025) | function createPositionalPseudo( fn ) {
  function testContext (line 1048) | function testContext( context ) {
  function setFilters (line 2093) | function setFilters() {}
  function toSelector (line 2164) | function toSelector( tokens ) {
  function addCombinator (line 2174) | function addCombinator( matcher, combinator, base ) {
  function elementMatcher (line 2232) | function elementMatcher( matchers ) {
  function multipleContexts (line 2246) | function multipleContexts( selector, contexts, results ) {
  function condense (line 2255) | function condense( unmatched, map, filter, context, xml ) {
  function setMatcher (line 2276) | function setMatcher( preFilter, selector, matcher, postFilter, postFinde...
  function matcherFromTokens (line 2369) | function matcherFromTokens( tokens ) {
  function matcherFromGroupMatchers (line 2427) | function matcherFromGroupMatchers( elementMatchers, setMatchers ) {
  function winnow (line 2765) | function winnow( elements, qualifier, not ) {
  function sibling (line 3078) | function sibling( cur, dir ) {
  function createOptions (line 3159) | function createOptions( options ) {
  function detach (line 3595) | function detach() {
  function completed (line 3609) | function completed() {
  function dataAttr (line 3779) | function dataAttr( elem, key, data ) {
  function isEmptyDataObject (line 3813) | function isEmptyDataObject( obj ) {
  function internalData (line 3829) | function internalData( elem, name, data, pvt /* Internal Use Only */ ) {
  function internalRemoveData (line 3921) | function internalRemoveData( elem, name, pvt ) {
  function adjustCSS (line 4314) | function adjustCSS( elem, prop, valueParts, tween ) {
  function createSafeFragment (line 4444) | function createSafeFragment( document ) {
  function getAll (line 4548) | function getAll( context, tag ) {
  function setGlobalEval (line 4577) | function setGlobalEval( elems, refElements ) {
  function fixDefaultChecked (line 4593) | function fixDefaultChecked( elem ) {
  function buildFragment (line 4599) | function buildFragment( elems, context, scripts, selection, ignored ) {
  function returnTrue (line 4759) | function returnTrue() {
  function returnFalse (line 4763) | function returnFalse() {
  function safeActiveElement (line 4769) | function safeActiveElement() {
  function on (line 4775) | function on( elem, types, selector, data, fn, one ) {
  function manipulationTarget (line 5890) | function manipulationTarget( elem, content ) {
  function disableScript (line 5900) | function disableScript( elem ) {
  function restoreScript (line 5904) | function restoreScript( elem ) {
  function cloneCopyEvent (line 5914) | function cloneCopyEvent( src, dest ) {
  function fixCloneNodeIssues (line 5941) | function fixCloneNodeIssues( src, dest ) {
  function domManip (line 6009) | function domManip( collection, args, callback, ignored ) {
  function remove (line 6106) | function remove( elem, selector, keepData ) {
  function actualDisplay (line 6442) | function actualDisplay( name, doc ) {
  function defaultDisplay (line 6458) | function defaultDisplay( nodeName ) {
  function computeStyleTests (line 6607) | function computeStyleTests() {
  function addGetHookIf (line 6819) | function addGetHookIf( conditionFn, hookFn ) {
  function vendorPropName (line 6862) | function vendorPropName( name ) {
  function showHide (line 6881) | function showHide( elements, show ) {
  function setPositiveNumber (line 6938) | function setPositiveNumber( elem, value, subtract ) {
  function augmentWidthOrHeight (line 6947) | function augmentWidthOrHeight( elem, name, extra, isBorderBox, styles ) {
  function getWidthOrHeight (line 6991) | function getWidthOrHeight( elem, name, extra ) {
  function Tween (line 7374) | function Tween( elem, options, prop, end, easing ) {
  function createFxNow (line 7498) | function createFxNow() {
  function genFx (line 7506) | function genFx( type, includeWidth ) {
  function createTween (line 7526) | function createTween( value, prop, animation ) {
  function defaultPrefilter (line 7540) | function defaultPrefilter( elem, props, opts ) {
  function propFilter (line 7685) | function propFilter( props, specialEasing ) {
  function Animation (line 7722) | function Animation( elem, properties, options ) {
  function getClass (line 8803) | function getClass( elem ) {
  function addToPrefiltersOrTransports (line 9115) | function addToPrefiltersOrTransports( structure ) {
  function inspectPrefiltersOrTransports (line 9149) | function inspectPrefiltersOrTransports( structure, options, originalOpti...
  function ajaxExtend (line 9178) | function ajaxExtend( target, src ) {
  function ajaxHandleResponses (line 9198) | function ajaxHandleResponses( s, jqXHR, responses ) {
  function ajaxConvert (line 9255) | function ajaxConvert( s, response, jqXHR, isSuccess ) {
  function done (line 9753) | function done( status, nativeStatusText, responses, headers ) {
  function getDisplay (line 9985) | function getDisplay( elem ) {
  function filterHidden (line 9989) | function filterHidden( elem ) {
  function buildParams (line 10027) | function buildParams( prefix, obj, traditional, add ) {
  function createStandardXHR (line 10346) | function createStandardXHR() {
  function createActiveXHR (line 10352) | function createActiveXHR() {
  function getWindow (line 10682) | function getWindow( elem ) {

FILE: js/jquery-3.4.1.js
  function DOMEval (line 98) | function DOMEval( code, node, doc ) {
  function toType (line 128) | function toType( obj ) {
  function isArrayLike (line 496) | function isArrayLike( obj ) {
  function Sizzle (line 729) | function Sizzle( selector, context, results, seed ) {
  function createCache (line 871) | function createCache() {
  function markFunction (line 889) | function markFunction( fn ) {
  function assert (line 898) | function assert( fn ) {
  function addHandle (line 920) | function addHandle( attrs, handler ) {
  function siblingCheck (line 935) | function siblingCheck( a, b ) {
  function createInputPseudo (line 961) | function createInputPseudo( type ) {
  function createButtonPseudo (line 972) | function createButtonPseudo( type ) {
  function createDisabledPseudo (line 983) | function createDisabledPseudo( disabled ) {
  function createPositionalPseudo (line 1039) | function createPositionalPseudo( fn ) {
  function testContext (line 1062) | function testContext( context ) {
  function setFilters (line 2150) | function setFilters() {}
  function toSelector (line 2221) | function toSelector( tokens ) {
  function addCombinator (line 2231) | function addCombinator( matcher, combinator, base ) {
  function elementMatcher (line 2295) | function elementMatcher( matchers ) {
  function multipleContexts (line 2309) | function multipleContexts( selector, contexts, results ) {
  function condense (line 2318) | function condense( unmatched, map, filter, context, xml ) {
  function setMatcher (line 2339) | function setMatcher( preFilter, selector, matcher, postFilter, postFinde...
  function matcherFromTokens (line 2432) | function matcherFromTokens( tokens ) {
  function matcherFromGroupMatchers (line 2490) | function matcherFromGroupMatchers( elementMatchers, setMatchers ) {
  function nodeName (line 2826) | function nodeName( elem, name ) {
  function winnow (line 2836) | function winnow( elements, qualifier, not ) {
  function sibling (line 3131) | function sibling( cur, dir ) {
  function createOptions (line 3218) | function createOptions( options ) {
  function Identity (line 3443) | function Identity( v ) {
  function Thrower (line 3446) | function Thrower( ex ) {
  function adoptValue (line 3450) | function adoptValue( value, resolve, reject, noValue ) {
  function resolve (line 3543) | function resolve( depth, deferred, handler, special ) {
  function completed (line 3908) | function completed() {
  function fcamelCase (line 4003) | function fcamelCase( all, letter ) {
  function camelCase (line 4010) | function camelCase( string ) {
  function Data (line 4027) | function Data() {
  function getData (line 4196) | function getData( data ) {
  function dataAttr (line 4221) | function dataAttr( elem, key, data ) {
  function adjustCSS (line 4554) | function adjustCSS( elem, prop, valueParts, tween ) {
  function getDefaultDisplay (line 4622) | function getDefaultDisplay( elem ) {
  function showHide (line 4645) | function showHide( elements, show ) {
  function getAll (line 4746) | function getAll( context, tag ) {
  function setGlobalEval (line 4771) | function setGlobalEval( elems, refElements ) {
  function buildFragment (line 4787) | function buildFragment( elems, context, scripts, selection, ignored ) {
  function returnTrue (line 4908) | function returnTrue() {
  function returnFalse (line 4912) | function returnFalse() {
  function expectSync (line 4922) | function expectSync( elem, type ) {
  function safeActiveElement (line 4929) | function safeActiveElement() {
  function on (line 4935) | function on( elem, types, selector, data, fn, one ) {
  function leverageNative (line 5420) | function leverageNative( el, type, expectSync ) {
  function manipulationTarget (line 5791) | function manipulationTarget( elem, content ) {
  function disableScript (line 5802) | function disableScript( elem ) {
  function restoreScript (line 5806) | function restoreScript( elem ) {
  function cloneCopyEvent (line 5816) | function cloneCopyEvent( src, dest ) {
  function fixInput (line 5851) | function fixInput( src, dest ) {
  function domManip (line 5864) | function domManip( collection, args, callback, ignored ) {
  function remove (line 5956) | function remove( elem, selector, keepData ) {
  function computeStyleTests (line 6249) | function computeStyleTests() {
  function roundPixelMeasures (line 6293) | function roundPixelMeasures( measure ) {
  function curCSS (line 6338) | function curCSS( elem, name, computed ) {
  function addGetHookIf (line 6391) | function addGetHookIf( conditionFn, hookFn ) {
  function vendorPropName (line 6416) | function vendorPropName( name ) {
  function finalPropName (line 6431) | function finalPropName( name ) {
  function setPositiveNumber (line 6457) | function setPositiveNumber( elem, value, subtract ) {
  function boxModelAdjustment (line 6469) | function boxModelAdjustment( elem, dimension, box, isBorderBox, styles, ...
  function getWidthOrHeight (line 6537) | function getWidthOrHeight( elem, dimension, extra ) {
  function Tween (line 6904) | function Tween( elem, options, prop, end, easing ) {
  function schedule (line 7027) | function schedule() {
  function createFxNow (line 7040) | function createFxNow() {
  function genFx (line 7048) | function genFx( type, includeWidth ) {
  function createTween (line 7068) | function createTween( value, prop, animation ) {
  function defaultPrefilter (line 7082) | function defaultPrefilter( elem, props, opts ) {
  function propFilter (line 7254) | function propFilter( props, specialEasing ) {
  function Animation (line 7291) | function Animation( elem, properties, options ) {
  function stripAndCollapse (line 8006) | function stripAndCollapse( value ) {
  function getClass (line 8012) | function getClass( elem ) {
  function classesToArray (line 8016) | function classesToArray( value ) {
  function buildParams (line 8638) | function buildParams( prefix, obj, traditional, add ) {
  function addToPrefiltersOrTransports (line 8792) | function addToPrefiltersOrTransports( structure ) {
  function inspectPrefiltersOrTransports (line 8826) | function inspectPrefiltersOrTransports( structure, options, originalOpti...
  function ajaxExtend (line 8855) | function ajaxExtend( target, src ) {
  function ajaxHandleResponses (line 8875) | function ajaxHandleResponses( s, jqXHR, responses ) {
  function ajaxConvert (line 8933) | function ajaxConvert( s, response, jqXHR, isSuccess ) {
  function done (line 9448) | function done( status, nativeStatusText, responses, headers ) {

FILE: js/jquery.bgiframe.js
  function prop (line 65) | function prop(n) {

FILE: js/jquery.validate.js
  function handle (line 61) | function handle() {
  function delegate (line 329) | function delegate(event) {

FILE: uploadify/scripts/jquery.uploadify.js
  function f (line 13) | function f(){if(J){return;}try{var Z=j.getElementsByTagName("body")[0].a...
  function K (line 14) | function K(X){if(J){X();}else{U[U.length]=X;}}
  function s (line 14) | function s(Y){if(typeof O.addEventListener!=D){O.addEventListener("load"...
  function h (line 16) | function h(){if(T){V();}else{H();}}
  function V (line 16) | function V(){var X=j.getElementsByTagName("body")[0];var aa=C(r);
  function H (line 19) | function H(){var ag=o.length;if(ag>0){for(var af=0;af<ag;af++){var Y=o[a...
  function z (line 23) | function z(aa){var X=null;
  function A (line 24) | function A(){return !a&&F("6.0.65")&&(M.win||M.mac)&&!(M.wk&&M.wk<312);
  function P (line 25) | function P(aa,ab,X,Z){a=true;E=Z||null;B={success:false,id:X};var ae=c(X...
  function p (line 29) | function p(Y){if(M.ie&&M.win&&Y.readyState!=4){var X=C("div");
  function g (line 31) | function g(ab){var aa=C("div");if(M.win&&M.ie){aa.innerHTML=ab.innerHTML...
  function u (line 33) | function u(ai,ag,Y){var X,aa=c(Y);if(M.wk&&M.wk<312){return X;}if(aa){if...
  function e (line 37) | function e(Z,X,Y){var aa=C("param");
  function y (line 38) | function y(Y){var X=c(Y);if(X&&X.nodeName=="OBJECT"){if(M.ie&&M.win){X.s...
  function b (line 39) | function b(Z){var Y=c(Z);if(Y){for(var X in Y){if(typeof Y[X]=="function...
  function c (line 40) | function c(Z){var X=null;try{X=j.getElementById(Z);}catch(Y){}return X;}
  function C (line 40) | function C(X){return j.createElement(X);}
  function i (line 40) | function i(Z,X,Y){Z.attachEvent(X,Y);
  function F (line 41) | function F(Z){var Y=M.pv,X=Z.split(".");X[0]=parseInt(X[0],10);X[1]=pars...
  function v (line 42) | function v(ac,Y,ad,ab){if(M.ie&&M.mac){return;}var aa=j.getElementsByTag...
  function w (line 45) | function w(Z,X){if(!m){return;}var Y=X?"visible":"hidden";if(J&&c(Z)){c(...
  function L (line 45) | function L(Y){var Z=/[\\\"<>\.;]/;

FILE: xheditor/xheditor_plugins/html2markdown.js
  function HTML2Markdown (line 27) | function HTML2Markdown(html, opts) {
  function getNormalizedUrl (line 480) | function getNormalizedUrl(s) {

FILE: xheditor/xheditor_plugins/htmldomparser.js
  function isHiddenNode (line 82) | function isHiddenNode(node) {

FILE: xheditor/xheditor_plugins/multiupload/multiupload.js
  function removeFile (line 12) | function removeFile()
  function startUploadFiles (line 32) | function startUploadFiles()
  function setFileState (line 41) | function setFileState(fileid,txt)
  function fileQueued (line 45) | function fileQueued(file)//队列添加成功
  function fileQueueError (line 55) | function fileQueueError(file, errorCode, message)//队列添加失败
  function uploadStart (line 78) | function uploadStart(file)//单文件上传开始
  function uploadProgress (line 82) | function uploadProgress(file, bytesLoaded, bytesTotal)//单文件上传进度
  function uploadSuccess (line 88) | function uploadSuccess(file, serverData)//单文件上传成功
  function uploadError (line 108) | function uploadError(file, errorCode, message)//单文件上传错误
  function uploadComplete (line 112) | function uploadComplete(file)//文件上传周期结束
  function uploadAllComplete (line 117) | function uploadAllComplete()//全部文件上传成功
  function formatBytes (line 121) | function formatBytes(bytes) {

FILE: xheditor/xheditor_plugins/showdown.js
  function b (line 62) | function b(a){return a.replace(/[^\w]/g,"").toLowerCase()}

FILE: xheditor/xheditor_plugins/ubb.js
  function ubb2html (line 11) | function ubb2html(sUBB)
  function html2ubb (line 92) | function html2ubb(sHtml)
Condensed preview — 173 files, each showing path, character count, and a content snippet. Download the .json file or copy for the full structured content (1,681K chars).
[
  {
    "path": ".gitignore",
    "chars": 6,
    "preview": ".idea\n"
  },
  {
    "path": "LICENSE.txt",
    "chars": 1238,
    "preview": "\njUI遵循Apache2开源协议发布,并提供免费使用。\n版权所有Copyright © 2009-2020 by DWZ (http://j-ui.com) All rights reserved。\njUI® 商标和著作权所有者为DWZ团"
  },
  {
    "path": "README.md",
    "chars": 3545,
    "preview": "> ## 介绍\r\n\r\ngithub源码下载:https://github.com/dwzteam/dwz_jui\r\n\r\nDWZ富客户端框架(jQuery RIA framework), 是中国人自己开发的基于jQuery实现的Ajax RI"
  },
  {
    "path": "bin/ESC.wsf",
    "chars": 30742,
    "preview": "<?xml version=\"1.0\"?>\n<!-- Generated by Soya.IO.WSFFactory v0.95 [Tue, 28 Feb 2006 21:22:15 UTC] -->\n<package>\n<job>\n<?j"
  },
  {
    "path": "bin/gzjs-esc.bat",
    "chars": 1565,
    "preview": "cd D:\\workspace\\UI\\dev\\dwz_jui\\bin\n\nREM -------------- start package javascript --------------\n\ntype ..\\js\\dwz.core.js >"
  },
  {
    "path": "bin/gzjs.sh",
    "chars": 1714,
    "preview": "# http://tool.chinaz.com/js.aspx\n\n# -------------- start package javascript --------------\n\ncat ../js/dwz.core.js > dwz."
  },
  {
    "path": "changepwd.html",
    "chars": 1534,
    "preview": "\n<div class=\"pageContent\">\n\n\t<form method=\"post\" action=\"demo/common/ajaxDone.json\" class=\"pageForm required-validate\" o"
  },
  {
    "path": "chart/test/barchart.html",
    "chars": 2211,
    "preview": "\n<div id=\"test_barchart\" style=\"height: 400px;\"></div>\n\n<script type=\"text/javascript\">\n\n(function($){\n\n\tvar myChart = e"
  },
  {
    "path": "chart/test/hbarchart.html",
    "chars": 553,
    "preview": "\n<div id=\"test_barchart\" style=\"height: 400px;\"></div>\n\n<script type=\"text/javascript\">\n\n\t(function($){\n\n\t\tvar myChart ="
  },
  {
    "path": "chart/test/linechart.html",
    "chars": 1544,
    "preview": "\n<div id=\"test_linechart\" style=\"height: 400px;\"></div>\n\n<script type=\"text/javascript\">\n\n\t(function($){\n\n\t\tvar myChart "
  },
  {
    "path": "chart/test/linechart2.html",
    "chars": 1845,
    "preview": "\n<div id=\"test_linechart2\" style=\"height: 400px;\"></div>\n\n<script type=\"text/javascript\">\n\n\t(function($){\n\n\t\tvar myChart"
  },
  {
    "path": "chart/test/piechart.html",
    "chars": 1288,
    "preview": "\n<div id=\"test_piechart\" style=\"height: 400px;\"></div>\n\n<script type=\"text/javascript\">\n\n\t(function($){\n\n\t\tvar myChart ="
  },
  {
    "path": "demo/baidu_map.html",
    "chars": 6240,
    "preview": "<style type=\"text/css\">\n\t\t#baidu_map {width:100%; height: 500px;}\n\t\t#r-result {width:100%;font-size:12px;}\n\t</style>\n\n<d"
  },
  {
    "path": "demo/baidu_map_iframe.html",
    "chars": 1124,
    "preview": "<!DOCTYPE html>\n<html>\n<head>\n\t<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" />\n\t<meta name=\"viewpo"
  },
  {
    "path": "demo/combox/city_all.html",
    "chars": 24,
    "preview": "[\n    [\"all\", \"请选择省份\"]\n]"
  },
  {
    "path": "demo/combox/city_bj.html",
    "chars": 18,
    "preview": "[\n\t[\"bj\", \"北京市\"]\n]"
  },
  {
    "path": "demo/combox/city_sh.html",
    "chars": 18,
    "preview": "[\n\t[\"sh\", \"上海市\"]\n]"
  },
  {
    "path": "demo/common/ajaxDone.json",
    "chars": 146,
    "preview": "{\n\t\"statusCode\":\"200\",\n\t\"message\":\"\\u64cd\\u4f5c\\u6210\\u529f\",\n\t\"navTabId\":\"\",\n\t\"rel\":\"\",\n\t\"callbackType\":\"\",\n\t\"forwardUr"
  },
  {
    "path": "demo/common/ajaxDone_loadPage_error.json",
    "chars": 195,
    "preview": "{\n\t\"statusCode\":\"300\",\n\t\"message\":\"加载页面验证失败,关闭页面\",\n\t\"navTabId\":\"\",\n\t\"rel\":\"\",\n\t\"callbackType\":\"closeCurrentNavTab\", // c"
  },
  {
    "path": "demo/common/ajaxDone_w_list.json",
    "chars": 164,
    "preview": "{\n\t\"statusCode\":\"200\",\n\t\"message\":\"\\u64cd\\u4f5c\\u6210\\u529f\",\n\t\"navTabId\":\"w_list\",\n\t\"rel\":\"\",\n\t\"callbackType\":\"closeCur"
  },
  {
    "path": "demo/common/ajaxTimeout.json",
    "chars": 159,
    "preview": "{\n\t\"statusCode\":\"301\",\n\t\"message\":\"\\u4f1a\\u8bdd\\u8d85\\u65f6\\uff0c\\u8bf7\\u91cd\\u65b0\\u767b\\u5f55\\u3002\",\n\t\"navTabId\":\"\",\n"
  },
  {
    "path": "demo/database/db_attachmentBrightBack.html",
    "chars": 104,
    "preview": "{\n\t\"id\":\"1000\",\n\t\"fileName\":\"测试文件.txt\",\n\t\"attachmentPath\":\"/upload/测试文件.txt\",\n\t\"attachmentSize\":\"1024\"\n}"
  },
  {
    "path": "demo/database/db_attachmentLookup.html",
    "chars": 703,
    "preview": "\n<h2 class=\"contentTitle\">请选择需要上传的附件</h2>\n\n<form action=\"demo/database/db_attachmentBrightBack.html\" method=\"post\" encty"
  },
  {
    "path": "demo/database/db_lookupSuggest.html",
    "chars": 190,
    "preview": "[\n\t{\"id\":\"1\", \"orgName\":\"技术部\", \"orgNum\":\"1001\"},\n\t{\"id\":\"2\", \"orgName\":\"人事部\", \"orgNum\":\"1002\"},\n\t{\"id\":\"3\", \"orgName\":\"销"
  },
  {
    "path": "demo/database/db_select.html",
    "chars": 122,
    "preview": "<select class=\"combox\" name=\"${param.inputName}\">\n\t<option value=\"Yes\">是</option>\n\t<option value=\"No\">否</option>\n</selec"
  },
  {
    "path": "demo/database/db_widget.html",
    "chars": 10738,
    "preview": "<h2 class=\"contentTitle\">suggest+lookup</h2>\n<form action=\"demo/common/ajaxDone.json\" method=\"post\" class=\"pageForm requ"
  },
  {
    "path": "demo/database/dwzOrgLookup.html",
    "chars": 2506,
    "preview": "\n<form id=\"pagerForm\" action=\"demo/database/dwzOrgLookup.html\">\n\t<input type=\"hidden\" name=\"pageNum\" value=\"1\" />\n\t<inpu"
  },
  {
    "path": "demo/database/dwzOrgLookup2.html",
    "chars": 2816,
    "preview": "\n<form id=\"pagerForm\" action=\"demo/database/dwzOrgLookup2.html\">\n\t<input type=\"hidden\" name=\"pageNum\" value=\"1\" />\n\t<inp"
  },
  {
    "path": "demo/database/treeBringBack.html",
    "chars": 988,
    "preview": "<h2 class=\"contentTitle\">tree查找带回</h2>\n\n<div class=\"pageContent\">\n<form action=\"demo/common/ajaxDone.json\" method=\"post\""
  },
  {
    "path": "demo/database/treeLookup.html",
    "chars": 851,
    "preview": "\n<div class=\"pageContent\">\n\t<div class=\"pageFormContent\" layoutH=\"58\">\n\t\t<ul class=\"tree expand\">\n\t\t\t<li><a href=\"javasc"
  },
  {
    "path": "demo/pagination/ajaxDone1.html",
    "chars": 168,
    "preview": "{\n\t\"statusCode\":\"200\",\n\t\"message\":\"\\u64cd\\u4f5c\\u6210\\u529f\",\n\t\"navTabId\":\"pagination\",\n\t\"rel\":\"\",\n\t\"callbackType\":\"clos"
  },
  {
    "path": "demo/pagination/ajaxDone2.html",
    "chars": 166,
    "preview": "{\n\t\"statusCode\":\"200\",\n\t\"message\":\"\\u64cd\\u4f5c\\u6210\\u529f\",\n\t\"navTabId\":\"\",\n\t\"rel\":\"jbsxBox2\",\n\t\"callbackType\":\"closeC"
  },
  {
    "path": "demo/pagination/ajaxDone3.html",
    "chars": 154,
    "preview": "{\n\t\"statusCode\":\"200\",\n\t\"message\":\"\\u64cd\\u4f5c\\u6210\\u529f\",\n\t\"navTabId\":\"\",\n\t\"rel\":\"jbsxBox2\",\n\t\"callbackType\":\"\",\n\t\"f"
  },
  {
    "path": "demo/pagination/dialog1.html",
    "chars": 827,
    "preview": "\n<div class=\"pageContent\">\n\t\n\t<form method=\"post\" action=\"demo/pagination/ajaxDone1.html\" class=\"pageForm required-valid"
  },
  {
    "path": "demo/pagination/dialog2.html",
    "chars": 827,
    "preview": "\n<div class=\"pageContent\">\n\t\n\t<form method=\"post\" action=\"demo/pagination/ajaxDone2.html\" class=\"pageForm required-valid"
  },
  {
    "path": "demo/pagination/layout1.html",
    "chars": 2256,
    "preview": "<style type=\"text/css\">\n\tul.rightTools {float:right; display:block;}\n\tul.rightTools li{float:left; display:block; margin"
  },
  {
    "path": "demo/pagination/layout2.html",
    "chars": 1779,
    "preview": "<div class=\"pageContent\">\n\t<div id=\"jbsxBox2\" class=\"unitBox\" style=\"float:left; display:block; overflow:auto; width:514"
  },
  {
    "path": "demo/pagination/list1.html",
    "chars": 4967,
    "preview": "<div class=\"pageHeader\" style=\"border:1px #B8D0D6 solid\">\n\t<form id=\"pagerForm\" onsubmit=\"return divSearch(this, 'jbsxBo"
  },
  {
    "path": "demo/pagination/list2.html",
    "chars": 2524,
    "preview": "<div class=\"pageHeader\" style=\"border:1px #B8D0D6 solid\">\n\t<form id=\"pagerForm\" onsubmit=\"return divSearch(this, 'jbsxBo"
  },
  {
    "path": "demo/pagination/list3.html",
    "chars": 2262,
    "preview": "<div class=\"pageHeader\" style=\"border:1px #B8D0D6 solid\">\n\t<form id=\"pagerForm\" onsubmit=\"return divSearch(this, 'jbsxBo"
  },
  {
    "path": "demo/row-col.html",
    "chars": 1034,
    "preview": "\n<div layoutH=\"0\">\n\t<div class=\"row\">\n\t\t<div class=\"col-md-6 col-sm-12\">\n\n\t\t\t<div class=\"panel collapse\" defH=\"150\">\n\t\t\t"
  },
  {
    "path": "demo/sortDrag/1.html",
    "chars": 1642,
    "preview": "<h2 class=\"contentTitle\">单个sortDrag示例</h2>\n\n<div class=\"pageContent\" layoutH=\"42\">\n\n\t<!--<div style=\"border: 1px red das"
  },
  {
    "path": "demo/sortDrag/2.html",
    "chars": 2178,
    "preview": "<h2 class=\"contentTitle\">多个sortDrag示例</h2>\n\n<div class=\"pageContent\" layoutH=\"42\">\n\n<div class=\"sortDrag\" data-over-sort"
  },
  {
    "path": "demo/sortDrag/form.html",
    "chars": 2276,
    "preview": "<h2 class=\"contentTitle\">可拖动表单示例</h2>\n<form method=\"post\" action=\"demo/common/ajaxDone.json\" class=\"pageForm required-va"
  },
  {
    "path": "demo_page1.html",
    "chars": 24840,
    "preview": "<form id=\"pagerForm\" method=\"post\" action=\"demo_page1.html\">\n\t<input type=\"hidden\" name=\"status\" value=\"${param.status}\""
  },
  {
    "path": "demo_page2.html",
    "chars": 380,
    "preview": "\n<textarea style=\"width:95%;height:200px\">\nDWZ富客户端框架\n\n在线演示地址\thttp://j-ui.com/\n下载地址\thttp://code.google.com/p/dwz/\n\n官方微博: "
  },
  {
    "path": "demo_page4.html",
    "chars": 3880,
    "preview": "\n<div class=\"pageContent\">\n\t<form method=\"post\" action=\"demo/common/ajaxDone_w_list.json\" class=\"pageForm required-valid"
  },
  {
    "path": "demo_page5.html",
    "chars": 997,
    "preview": "\n<div class=\"pageContent\">\n\t<form method=\"post\" action=\"demo/common/ajaxDone.html\" class=\"pageForm required-validate\" on"
  },
  {
    "path": "demo_page6.html",
    "chars": 3132,
    "preview": "\n<div class=\"pageContent\">\n\t<form method=\"post\" action=\"demo_page1.html\" class=\"pageForm\" onsubmit=\"return navTabSearch("
  },
  {
    "path": "demo_upload.html",
    "chars": 848,
    "preview": "\n<div class=\"pageContent\">\n\t<form method=\"post\" action=\"demo/common/ajaxDone.html\" enctype=\"multipart/form-data\" class=\""
  },
  {
    "path": "doc/git.txt",
    "chars": 657,
    "preview": "#git remote add github https://github.com/dwzteam/dwz_jui.git\ngit remote add github git@github.com:dwzteam/dwz_jui.git\ng"
  },
  {
    "path": "donation.html",
    "chars": 1567,
    "preview": "\n<div class=\"pageContent\">\n\n\t<div class=\"pageFormContent nowrap\" layoutH=\"10\">\n\n\t\t<p style=\"padding:3px;line-height: 20p"
  },
  {
    "path": "dwz.frag.xml",
    "chars": 7199,
    "preview": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<_AJAX_>\n\n<!-- dwz.dialog -->\n<_PAGE_ id=\"dialogFrag\"><![CDATA[\n<div class=\"dialo"
  },
  {
    "path": "index.html",
    "chars": 17701,
    "preview": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\""
  },
  {
    "path": "index_menu.html",
    "chars": 11842,
    "preview": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\""
  },
  {
    "path": "js/dwz.accordion.js",
    "chars": 8455,
    "preview": "/**\n * @author Roger Wu\n */\n\n(function($) {\nvar jmenus = new Map();\n// If the DWZ scope is not available, add it\n$.dwz ="
  },
  {
    "path": "js/dwz.ajax.js",
    "chars": 12781,
    "preview": "/**\n * @author 张慧华 z@j-ui.com\n *\n */\n\n/**\n * 普通ajax表单提交\n * @param {Object} form\n * @param {Object} callback\n * @param {S"
  },
  {
    "path": "js/dwz.alertMsg.js",
    "chars": 3494,
    "preview": "/**\n * @author 张慧华 z@j-ui.com\n */\n$.setRegional(\"alertMsg\", {\n\ttitle:{error:\"Error\", info:\"Information\", warn:\"Warning\","
  },
  {
    "path": "js/dwz.barDrag.js",
    "chars": 3214,
    "preview": "/**\n * @author Roger Wu \n * @version 1.0\n */\n(function($){\n\t$.fn.cssv = function(pre){\n\t\tvar cssPre = $(this).css(pre);\n"
  },
  {
    "path": "js/dwz.checkbox.js",
    "chars": 1263,
    "preview": "/**\n * @author 张慧华 z@j-ui.com\n */\n(function($){\n\t$.fn.extend({\n\n\t\tcheckboxCtrl: function(parent){\n\t\t\treturn this.each(fu"
  },
  {
    "path": "js/dwz.combox.js",
    "chars": 5355,
    "preview": "/**\n * @author Roger Wu\n */\n\n(function($){\n\tvar allSelectBox = [];\n\tvar killAllBox = function(bid){\n\t\t$.each(allSelectBo"
  },
  {
    "path": "js/dwz.contextmenu.js",
    "chars": 1621,
    "preview": "/**\n * @author 张慧华 z@j-ui.com\n */\n\n(function($){\n\tvar menu, shadow, hash;\n\t$.fn.extend({\n\t\tcontextMenu: function(id, opt"
  },
  {
    "path": "js/dwz.core.js",
    "chars": 14089,
    "preview": "/**\n * @author 张慧华 z@j-ui.com\n *\n */\n\nvar DWZ = {\n\tversion: '1.6.2',\n\tregPlugins: [], // [function($parent){} ...]\n\t// s"
  },
  {
    "path": "js/dwz.cssTable.js",
    "chars": 1038,
    "preview": "/**\n * Theme Plugins\n * @author 张慧华 z@j-ui.com\n */\n(function($){\n\t$.fn.extend({\n\t\tcssTable: function(options){\n\n\t\t\tretur"
  },
  {
    "path": "js/dwz.database.js",
    "chars": 15091,
    "preview": "/**\n * @author ZhangHuihua@msn.com\n */\n(function($){\n\tvar _lookup = {currentGroup:\"\", suffix:\"\", $target:null, pk:\"id\"};"
  },
  {
    "path": "js/dwz.datepicker.js",
    "chars": 10818,
    "preview": "/**\n * reference dwz.util.date.js\n * @author ZhangHuihua@msn.com\n * \n */\n(function($){\n\t$.setRegional(\"datepicker\", {\n\t\t"
  },
  {
    "path": "js/dwz.dialog.js",
    "chars": 11724,
    "preview": "/**\n * @author Roger Wu\n * reference:dwz.drag.js, dwz.dialogDrag.js, dwz.resize.js, dwz.taskBar.js\n */\n(function($){\n\t$."
  },
  {
    "path": "js/dwz.dialogDrag.js",
    "chars": 1826,
    "preview": "/**\n * @author Roger Wu\n */\n(function($){\n\t$.fn.dialogDrag = function(options){\n        if (typeof options == 'string') "
  },
  {
    "path": "js/dwz.drag.js",
    "chars": 3501,
    "preview": "/**\n * @author Roger Wu\n */\n(function($){\n\n\t$.scrollPosParents = function(el){\n\t\tvar $el = $(el);\n\t\t// var scrollPos = {"
  },
  {
    "path": "js/dwz.effects.js",
    "chars": 3472,
    "preview": "/**\n * @author Roger Wu\n */\n(function($){\n\t$.extend($.fn, {\n\t\tjBlindUp: function(options){\n\t\t\tvar op = $.extend({duratio"
  },
  {
    "path": "js/dwz.file.js",
    "chars": 3306,
    "preview": "/**\n * Created by huihuazhang on 2016/4/27.\n * 基于HTML5 文件上传的核心脚本\n * http://www.w3.org/TR/html-markup/input.file.html\n */"
  },
  {
    "path": "js/dwz.history.js",
    "chars": 2583,
    "preview": "/**\n * jQuery ajax history plugins\n * @author 张慧华 z@j-ui.com\n */\n\n\n(function($){\n\n\t$.extend({\n\t\t\n\t\tHistory: {\n\t\t\t_hash: "
  },
  {
    "path": "js/dwz.miscDrag.js",
    "chars": 10188,
    "preview": "/**\n * @author 张慧华 z@j-ui.com\n */\n(function ($) {\n    DWZ.miscDrag = {\n        start: function ($sortBox, $item, event, "
  },
  {
    "path": "js/dwz.navTab.js",
    "chars": 12944,
    "preview": "/**\n * @author 张慧华 z@j-ui.com\n *\n */\nvar navTab = {\n\tcomponentBox: null, // tab component. contain tabBox, prevBut, next"
  },
  {
    "path": "js/dwz.pagination.js",
    "chars": 5107,
    "preview": "/**\n * \n * @author 张慧华 z@j-ui.com\n * @param {Object} opts Several options\n */\n(function($){\n\t$.fn.extend({\n\t\tpagination:"
  },
  {
    "path": "js/dwz.panel.js",
    "chars": 1963,
    "preview": "/**\n * @author Roger Wu\n * @version 1.0\n */\n(function($){\n\t$.extend($.fn, {\n\t\tjPanel:function(options){\n\t\t\tvar op = $.ex"
  },
  {
    "path": "js/dwz.print.js",
    "chars": 408,
    "preview": "/**\n * @author 张慧华 z@j-ui.com\n *\n */\n(function($){\n\t$.printBox = function(rel){\n\t\tvar _printBoxId = 'printBox';\n\t\tvar $c"
  },
  {
    "path": "js/dwz.regional.zh.js",
    "chars": 1152,
    "preview": "/**\n * @author 张慧华 z@j-ui.com\n */\n(function($){\n\t// jQuery validate\n\tif ($.validator) {\n\t\t$.extend($.validator.messages,"
  },
  {
    "path": "js/dwz.resize.js",
    "chars": 3785,
    "preview": "/**\n * @author Roger Wu\n * @version 1.0\n */\n(function($){\n \t$.fn.extend({jresize:function(options) {\n        if (typeof "
  },
  {
    "path": "js/dwz.scrollCenter.js",
    "chars": 2738,
    "preview": "/**\n * @desc 兼容不同的浏览器居中scrollCenter\n * @author 张慧华 z@j-ui.com\n */\n(function($){\n\t$.fn.extend({\n\n\t\tgetWindowSize: functio"
  },
  {
    "path": "js/dwz.selectedLoad.js",
    "chars": 2221,
    "preview": "/**\n * Created by huihuazhang on 16/4/9.\n */\n(function($){\n\t$.fn.extend({\n\t\tselectedLoad: function(){\n\n\t\t\tfunction _getI"
  },
  {
    "path": "js/dwz.sortDrag.js",
    "chars": 6605,
    "preview": "/**\n * @author 张慧华 z@j-ui.com\n */\n(function ($) {\n    var _op = {\n        cursor: 'move', // selector 的鼠标手势\n        sort"
  },
  {
    "path": "js/dwz.stable.js",
    "chars": 7736,
    "preview": "/**\n * @author Roger Wu v1.0\n * @author ZhangHuihua@msn.com 2011-4-1\n */\n(function($){\n\t$.fn.jTable = function(options){"
  },
  {
    "path": "js/dwz.switchEnv.js",
    "chars": 1391,
    "preview": "/**\n * @author zhanghuihua@msn.com\n */\n(function($){\n\t$.fn.navMenu = function(){\n\t\treturn this.each(function(){\n\t\t\tvar $"
  },
  {
    "path": "js/dwz.tab.js",
    "chars": 3488,
    "preview": "/**\n * @author 张慧华 z@j-ui.com\n *\n */\n(function($){\n\t$.fn.extend({\n\n\t\t/**\n\t\t * options: reverse[true, false], eventType[c"
  },
  {
    "path": "js/dwz.taskBar.js",
    "chars": 8619,
    "preview": "/**\n * @author Roger Wu\n * @version 1.0\n */\n(function($){\n\n\t$.fn.extend({\n\t\tjTask:function(options){\n\t\t\treturn this.each"
  },
  {
    "path": "js/dwz.theme.js",
    "chars": 1031,
    "preview": "/**\n * Theme Plugins\n * @author 张慧华 z@j-ui.com\n */\n(function($){\n\t$.fn.extend({\n\t\ttheme: function(options){\n\t\t\tvar op = "
  },
  {
    "path": "js/dwz.tree.js",
    "chars": 8405,
    "preview": "/**\n * @author Roger Wu\n * @version 1.0\n * added extend property oncheck\n */\n (function($){\n \t$.extend($.fn, {\n\t\tjTree:f"
  },
  {
    "path": "js/dwz.ui.js",
    "chars": 9072,
    "preview": "function initEnv() {\n\t$(\"body\").append(DWZ.frag[\"dwzFrag\"]);\n\n\t$(window).resize(function(){\n\t\tinitLayout();\n\t\t$(this).tr"
  },
  {
    "path": "js/dwz.util.date.js",
    "chars": 8901,
    "preview": "/**\n * @author 张慧华 z@j-ui.com\n * ----------------------------------------------------------\n * These functions use the s"
  },
  {
    "path": "js/dwz.util.number.js",
    "chars": 4188,
    "preview": "/**\n * @author 张慧华 z@j-ui.com\n * \n */\n(function(){\n\nfunction formatCurrency(num) {\n\tnum = num.toString().replace(/\\$|\\,/"
  },
  {
    "path": "js/dwz.validate.method.js",
    "chars": 1815,
    "preview": "/**\n * @requires jquery.validate.js\n * @author 张慧华 z@j-ui.com\n */\n(function($){\n\tif ($.validator) {\n\t\t$.validator.addMet"
  },
  {
    "path": "js/jquery-1.12.4.js",
    "chars": 293430,
    "preview": "/*!\n * jQuery JavaScript Library v1.12.4\n * http://jquery.com/\n *\n * Includes Sizzle.js\n * http://sizzlejs.com/\n *\n * Co"
  },
  {
    "path": "js/jquery-3.4.1.js",
    "chars": 280364,
    "preview": "/*!\n * jQuery JavaScript Library v3.4.1\n * https://jquery.com/\n *\n * Includes Sizzle.js\n * https://sizzlejs.com/\n *\n * C"
  },
  {
    "path": "js/jquery.bgiframe.js",
    "chars": 2554,
    "preview": "/*! Copyright (c) 2013 Brandon Aaron (http://brandon.aaron.sh)\n * Licensed under the MIT License (LICENSE.txt).\n *\n * Ve"
  },
  {
    "path": "js/jquery.cookie.js",
    "chars": 3937,
    "preview": "/**\n * Cookie plugin\n *\n * Copyright (c) 2006 Klaus Hartl (stilbuero.de)\n * Dual licensed under the MIT and GPL licenses"
  },
  {
    "path": "js/jquery.easing.1.3.js",
    "chars": 8095,
    "preview": "/*\n * jQuery Easing v1.3 - http://gsgd.co.uk/sandbox/jquery/easing/\n *\n * Uses the built in easing capabilities added In"
  },
  {
    "path": "js/jquery.validate.js",
    "chars": 38950,
    "preview": "/*!\n * jQuery Validation Plugin 1.11.1\n *\n * http://bassistance.de/jquery-plugins/jquery-plugin-validation/\n * http://do"
  },
  {
    "path": "js/speedup.js",
    "chars": 370,
    "preview": "/**\n * @author Roger Wu\n */\n/*@cc_on _d=document;eval('var document=_d')@*/\n/*@cc_on eval((function(props) {var code = ["
  },
  {
    "path": "login.html",
    "chars": 2122,
    "preview": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\""
  },
  {
    "path": "login_dialog.html",
    "chars": 766,
    "preview": "\n<div class=\"pageContent\">\n\t\n\t<form method=\"post\" action=\"demo/common/ajaxDone.html\" class=\"pageForm\" onsubmit=\"return v"
  },
  {
    "path": "main.html",
    "chars": 1704,
    "preview": "<div class=\"accountInfo\">\n\t<div class=\"alertInfo\">\n\t\t<!--\n\t\t<h2>最新消息:</h2>\n\t\t<a href=\"\">深交所:中小散户是股票上市首日买入主体 占比56%</a>\n\t\t"
  },
  {
    "path": "miscDrag.html",
    "chars": 11076,
    "preview": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\""
  },
  {
    "path": "miscDrag2.html",
    "chars": 5259,
    "preview": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\""
  },
  {
    "path": "miscDragScreen1.html",
    "chars": 6947,
    "preview": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\""
  },
  {
    "path": "newPage1.html",
    "chars": 5,
    "preview": "新建窗口1"
  },
  {
    "path": "newPage2.html",
    "chars": 5,
    "preview": "新建窗口2"
  },
  {
    "path": "newPage3.html",
    "chars": 5,
    "preview": "新建窗口3"
  },
  {
    "path": "sidebar_1.html",
    "chars": 1063,
    "preview": "<div class=\"accordion\" fillSpace=\"sideBar\">\n\t<div class=\"accordionHeader\">\n\t\t<h2><span>Folder</span>界面组件</h2>\n\t</div>\n\t<"
  },
  {
    "path": "sidebar_2.html",
    "chars": 848,
    "preview": "<div class=\"accordion\" fillSpace=\"sideBar\">\n\t<div class=\"accordionHeader\">\n\t\t<h2><span>Folder</span>典型页面</h2>\n\t</div>\n\t<"
  },
  {
    "path": "tabsPage.html",
    "chars": 331,
    "preview": "<h2 class=\"contentTitle\">主框架面板</h2>\n<div style=\"padding:0 10px; line-height:21px;\">\n\t<b>打开方式:</b><br />\n\t1. 新建Tab窗口:targ"
  },
  {
    "path": "test_print.html",
    "chars": 10043,
    "preview": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\""
  },
  {
    "path": "themes/azure/style.css",
    "chars": 11222,
    "preview": "@charset \"utf-8\";\n\n/* Icon */\n.tabsHeader li.main a span span, #taskbar li .taskbutton span { background:url(./images/ic"
  },
  {
    "path": "themes/css/core.css",
    "chars": 59406,
    "preview": "@charset \"utf-8\";\n\n/* Core Code */\nhtml, body, div, span, applet, object, iframe,\nh1, h2, h3, h4, h5, h6, p, blockquote,"
  },
  {
    "path": "themes/css/ieHack.css",
    "chars": 3585,
    "preview": "@charset \"utf-8\";\n\nhtml, body { *overflow:hidden;}\n\n#header .nav li a { line-height:14px;}\n#header .menu li a, #header ."
  },
  {
    "path": "themes/css/login.css",
    "chars": 2918,
    "preview": "@charset \"utf-8\";\n\nhtml, body, div, span, applet, object, iframe,\nh1, h2, h3, h4, h5, h6, p, blockquote, pre,\na, abbr, a"
  },
  {
    "path": "themes/css/print.css",
    "chars": 860,
    "preview": "#layout, #footer, #splitBar, #splitBarProxy, #alertBackground, #dialogBackground, #background, \n.comboxop, .shadow, .pan"
  },
  {
    "path": "themes/default/style.css",
    "chars": 11208,
    "preview": "@charset \"utf-8\";\n\n/* Icon */\n.tabsHeader li.main a span span, #taskbar li .taskbutton span { background:url(./images/ic"
  },
  {
    "path": "themes/green/style.css",
    "chars": 11103,
    "preview": "@charset \"utf-8\";\n\n/* Icon */\n.tabsHeader li.main a span span, #taskbar li .taskbutton span { background:url(../default/"
  },
  {
    "path": "themes/miscDrag/screen.css",
    "chars": 1473,
    "preview": ".miscSortDrag dt {position: fixed; top: 10px; left:10px; width: 160px; margin-right: 10px;}\n.miscSortDrag dt fieldset, ."
  },
  {
    "path": "themes/purple/style.css",
    "chars": 11378,
    "preview": "@charset \"utf-8\";\n/*\n1.改模板的颜色.panel .panelContent { border-color:#}全部为目标颜色\n2.改body的background\n3.改图片的路径\n4.改 #sidebar_s .c"
  },
  {
    "path": "themes/silver/style.css",
    "chars": 11205,
    "preview": "@charset \"utf-8\";\n\n/* Icon */\n.tabsHeader li.main a span span, #taskbar li .taskbutton span { background:url(../default/"
  },
  {
    "path": "uploadify/Change Log.txt",
    "chars": 524,
    "preview": "Uploadify Change Log\nCopyright (c) 2012 by Reactive Apps, Ronnie Garcia\n\nv3.2\n- Added a new option for itemTemplate wher"
  },
  {
    "path": "uploadify/css/uploadify.css",
    "chars": 2497,
    "preview": "/*\nUploadify\nCopyright (c) 2012 Reactive Apps, Ronnie Garcia\nReleased under the MIT License <http://www.opensource.org/l"
  },
  {
    "path": "uploadify/scripts/jquery.uploadify.js",
    "chars": 64822,
    "preview": "/*\nSWFObject v2.2 <http://code.google.com/p/swfobject/> \nis released under the MIT License <http://www.opensource.org/li"
  },
  {
    "path": "validate_remote.html",
    "chars": 5,
    "preview": "false"
  },
  {
    "path": "w_accordion.html",
    "chars": 4368,
    "preview": "\n<div class=\"pageContent\" layoutH=\"0\">\n\t\n\t<div class=\"accordion\" style=\"width:300px;float:left;margin:5px;\">\n\t\t<div clas"
  },
  {
    "path": "w_alert.html",
    "chars": 2996,
    "preview": "<script type=\"text/javascript\">\nfunction testConfirmMsg(url, data){\n\talertMsg.confirm(\"您修改的资料未保存,请选择保存或取消!\", {\n\t\tokCall:"
  },
  {
    "path": "w_button.html",
    "chars": 1023,
    "preview": "<h2 class=\"contentTitle\">按钮</h2>\n\n<div class=\"pageFormContent\" layoutH=\"60\">\n\t<fieldset>\n\t\t<legend>正常按钮</legend>\n\t\t<dl c"
  },
  {
    "path": "w_checkbox.html",
    "chars": 1659,
    "preview": "<h2 class=\"contentTitle\">多选框/单选框</h2>\n<form method=\"post\" action=\"demo/common/ajaxDone.json\" class=\"pageForm required-va"
  },
  {
    "path": "w_combox.html",
    "chars": 1475,
    "preview": "<h2 class=\"contentTitle\">下拉菜单</h2>\n\n<div class=\"pageContent\" layoutH=\"56\">\n\t<select class=\"combox\" name=\"province\" ref=\""
  },
  {
    "path": "w_datepicker.html",
    "chars": 4876,
    "preview": "<h2 class=\"contentTitle\">日历控件</h2>\n\n<div class=\"pageContent\">\n\t<form method=\"post\" action=\"demo/common/ajaxDone.json\" cl"
  },
  {
    "path": "w_dialog.html",
    "chars": 2023,
    "preview": "<script type=\"text/javascript\">\nfunction closedialog(param) {\n\talert(param.msg);\n\treturn true;\n}\n</script>\n\n<h2 class=\"c"
  },
  {
    "path": "w_editor.html",
    "chars": 2770,
    "preview": "<h2 class=\"contentTitle\">编辑器</h2>\n<div style=\"display:block; overflow:hidden; padding:0 10px; line-height:21px;\">\n\n\t<div"
  },
  {
    "path": "w_html5_upload.html",
    "chars": 1467,
    "preview": "\n<div class=\"pageContent\">\n\t<form method=\"post\" action=\"demo/common/ajaxDone.html\" enctype=\"multipart/form-data\" class=\""
  },
  {
    "path": "w_list.html",
    "chars": 8321,
    "preview": "<form id=\"pagerForm\" method=\"post\" action=\"w_list.html\">\n\t<input type=\"hidden\" name=\"pageNum\" value=\"1\" />\n\t<input type="
  },
  {
    "path": "w_panel.html",
    "chars": 2137,
    "preview": "<h2 class=\"contentTitle\">面板</h2>\n\n\n<div class=\"pageContent sortDrag\" selector=\"h1\" layoutH=\"42\">\n\n\t<div class=\"panel\" de"
  },
  {
    "path": "w_removeSelected.html",
    "chars": 13862,
    "preview": "<script type=\"text/javascript\">\n\tfunction myExport(url){\n\t\tvar $form = $(\"#mySearchForm\", navTab.getCurrentPanel());\n\n\t\t"
  },
  {
    "path": "w_tabs.html",
    "chars": 1886,
    "preview": "<h2 class=\"contentTitle\">选项卡面板演示</h2>\n\n<div class=\"pageContent\">\n\t<div class=\"tabs close collapse\" currentIndex=\"1\" even"
  },
  {
    "path": "w_textInput.html",
    "chars": 1477,
    "preview": "<h2 class=\"contentTitle\">文本框/文本域</h2>\n\n\t\n<div class=\"pageFormContent\" layoutH=\"60\">\n\t<fieldset>\n\t\t<legend>单行文本框</legend>"
  },
  {
    "path": "w_tree.html",
    "chars": 4041,
    "preview": "<h2 class=\"contentTitle\">树形菜单</h2>\n\n<div id=\"resultBox\"></div>\n\n<div style=\" float:left; display:block; margin:10px; ove"
  },
  {
    "path": "w_uploadify.html",
    "chars": 4567,
    "preview": "<h2 class=\"contentTitle\">uploadify多文件上传</h2>\n\n<style type=\"text/css\" media=\"screen\">\n.my-uploadify-button {\n\tbackground:"
  },
  {
    "path": "w_validation.html",
    "chars": 4266,
    "preview": "<h2 class=\"contentTitle\">表单验证</h2>\n\n\n<div class=\"pageContent\">\n\t\n\t<form method=\"post\" action=\"demo/common/ajaxDone.html\""
  },
  {
    "path": "window_open.html",
    "chars": 429,
    "preview": "<html>\n<head>\n<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" />\n<title>简单实用国产jQuery UI框架 - DWZ富客户端框架"
  },
  {
    "path": "xheditor/xheditor_emot/default/config.txt",
    "chars": 463,
    "preview": "'default':{name:'Ĭ��',width:24,height:24,line:7,list:{'smile':'΢Ц','tongue':'����ͷ','titter':'͵Ц','laugh':'��Ц','sad':'�"
  },
  {
    "path": "xheditor/xheditor_emot/ipb/config.txt",
    "chars": 468,
    "preview": "ipb:{name:'IPB',width:20,height:25,line:8,list:{smile:'΢Ц',joyful:'����',laugh:'Ц',biglaugh:'��Ц',w00t:'����',wub:'��ϲ',"
  },
  {
    "path": "xheditor/xheditor_emot/pidgin/config.txt",
    "chars": 450,
    "preview": "pidgin:{name:'Pidgin',width:22,height:25,line:8,list:{smile:'΢Ц',cute:'�ɰ�',wink:'գ��',laugh:'��Ц',victory:'ʤ��',sad:'��"
  },
  {
    "path": "xheditor/xheditor_lang/en.js",
    "chars": 6211,
    "preview": "/**\n * @license Copyright (c) 2009-2013, xhEditor.com. All rights reserved.\n * For licensing, see LGPL-LICENSE.txt or ht"
  },
  {
    "path": "xheditor/xheditor_lang/zh-cn.js",
    "chars": 4993,
    "preview": "/**\n * @license Copyright (c) 2009-2013, xhEditor.com. All rights reserved.\n * For licensing, see LGPL-LICENSE.txt or ht"
  },
  {
    "path": "xheditor/xheditor_lang/zh-tw.js",
    "chars": 4976,
    "preview": "/**\n * @license Copyright (c) 2009-2013, xhEditor.com. All rights reserved.\n * For licensing, see LGPL-LICENSE.txt or ht"
  },
  {
    "path": "xheditor/xheditor_plugins/html2markdown.js",
    "chars": 12519,
    "preview": "/**\n * HTML2Markdown - An HTML to Markdown converter.\n * \n * This implementation uses HTML DOM parsing for conversion. P"
  },
  {
    "path": "xheditor/xheditor_plugins/htmldomparser.js",
    "chars": 2664,
    "preview": "/*\n * HTMLParser - This implementation of parser assumes we are parsing HTML in browser\n * and user DOM methods availabl"
  },
  {
    "path": "xheditor/xheditor_plugins/multiupload/multiupload.css",
    "chars": 1332,
    "preview": "html,body{\n\tfont-size:12px;\n\tpadding:0px;margin:0;\n\toverflow:hidden;\n\twidth:100%;height:100%;\n}\n#buttonArea{\n\tbackground"
  },
  {
    "path": "xheditor/xheditor_plugins/multiupload/multiupload.html",
    "chars": 4527,
    "preview": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\""
  },
  {
    "path": "xheditor/xheditor_plugins/multiupload/multiupload.js",
    "chars": 3402,
    "preview": "/*!\n * MultiUpload for xheditor\n * @requires xhEditor\n * \n * @author Yanis.Wang<yanis.wang@gmail.com>\n * @site http://xh"
  },
  {
    "path": "xheditor/xheditor_plugins/multiupload/swfupload/swfupload.js",
    "chars": 37689,
    "preview": "/**\n * SWFUpload: http://www.swfupload.org, http://swfupload.googlecode.com\n *\n * mmSWFUpload 1.0: Flash upload dialog -"
  },
  {
    "path": "xheditor/xheditor_plugins/showdown.js",
    "chars": 11251,
    "preview": "//\n// showdown.js -- A javascript port of Markdown.\n//\n// Copyright (c) 2007 John Fraser.\n//\n// Original Markdown Copyri"
  },
  {
    "path": "xheditor/xheditor_plugins/ubb.js",
    "chars": 13596,
    "preview": "/*!\n * WYSIWYG UBB Editor support for xhEditor\n * @requires xhEditor\n * \n * @author Yanis.Wang<yanis.wang@gmail.com>\n * "
  },
  {
    "path": "xheditor/xheditor_skin/default/iframe.css",
    "chars": 2243,
    "preview": "html{height:100%;background-color:#FFFFFF;}\nbody,td,th{font-family:Arial,Helvetica,sans-serif;font-size:12px;}\nbody{heig"
  },
  {
    "path": "xheditor/xheditor_skin/default/ui.css",
    "chars": 9842,
    "preview": ".xhe_default table, .xhe_default tr, .xhe_default td, .xhe_default iframe {border:0; margin:0; padding:0; background:tra"
  },
  {
    "path": "xheditor/xheditor_skin/nostyle/iframe.css",
    "chars": 2134,
    "preview": "html{height:100%;background-color:#FFFFFF;}\nbody,td,th{font-family:Arial,Helvetica,sans-serif;font-size:12px;}\nbody{heig"
  },
  {
    "path": "xheditor/xheditor_skin/nostyle/ui.css",
    "chars": 9826,
    "preview": ".xhe_nostyle table, .xhe_nostyle tr, .xhe_nostyle td, .xhe_nostyle iframe {border:0; margin:0; padding:0; background:tra"
  },
  {
    "path": "xheditor/xheditor_skin/o2007blue/iframe.css",
    "chars": 2146,
    "preview": "html{height:100%;background-color:#FFFFFF;}\nbody,td,th{font-family:Arial,Helvetica,sans-serif;font-size:12px;}\nbody{heig"
  },
  {
    "path": "xheditor/xheditor_skin/o2007blue/ui.css",
    "chars": 10063,
    "preview": ".xhe_o2007blue table, .xhe_o2007blue tr, .xhe_o2007blue td, .xhe_o2007blue iframe {border:0; margin:0; padding:0; backgr"
  },
  {
    "path": "xheditor/xheditor_skin/o2007silver/iframe.css",
    "chars": 2146,
    "preview": "html{height:100%;background-color:#FFFFFF;}\nbody,td,th{font-family:Arial,Helvetica,sans-serif;font-size:12px;}\nbody{heig"
  },
  {
    "path": "xheditor/xheditor_skin/o2007silver/ui.css",
    "chars": 10160,
    "preview": ".xhe_o2007silver table, .xhe_o2007silver tr, .xhe_o2007silver td, .xhe_o2007silver iframe {border:0; margin:0; padding:0"
  },
  {
    "path": "xheditor/xheditor_skin/vista/iframe.css",
    "chars": 2146,
    "preview": "html{height:100%;background-color:#FFFFFF;}\nbody,td,th{font-family:Arial,Helvetica,sans-serif;font-size:12px;}\nbody{heig"
  },
  {
    "path": "xheditor/xheditor_skin/vista/ui.css",
    "chars": 9892,
    "preview": ".xhe_vista table, .xhe_vista tr, .xhe_vista td, .xhe_vista iframe {border:0; margin:0; padding:0; background:transparent"
  }
]

// ... and 5 more files (download for full content)

About this extraction

This page contains the full source code of the dwzteam/dwz_jui GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 173 files (1.4 MB), approximately 448.0k tokens, and a symbol index with 270 extracted functions, classes, methods, constants, and types. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.

Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.

Copied to clipboard!