INTRA-MART 平台开发最佳实践
Version 1.0
2012-06-07
1
目 录
目录 .................................................................................................................................................... 2
1.
SAGE 详细设计:...................................................................................... 错误!未定义书签。
1.1. 页面配置及显示 .................................................................................................................... 3
1.2. 页头显示及页面跳转 ............................................................................................................4
1.3. 记录列表 ................................................................................................................................ 6
1.4. 列表分页 ................................................................................................................................ 9
1.5. 新增记录及表单验证 ..........................................................................................................13
1.6. 编辑和删除记录 .................................................................................................................. 17
1.7. 事务控制及异常提示 ..........................................................................................................21
1.8. 弹出列表 .............................................................................................................................. 26
1.9. 多标签 .................................................................................................................................. 30
1.10.
JS 控制修改弹出框.......................................................................... 错误!未定义书签。
1.11. 下拉列表 .......................................................................................................................... 34
2. 其他 .......................................................................................................................................... 36
2
INTRA-MART 平台开发最佳实践
1.1. 页面配置及显示
1.1.1. 功能描述:
组用户登录,在 intra-mart 平台配置模块的菜单节点。
一般用户登录,点击菜单节点,显示相应模块主界面。
1.1.2. 操作描述:
1.1.2.1.
Script 开发模式下配置菜单节点(以“中心资料”模块为例)
模块文件路径:C:\imart\pages\src\center_demo\
“中心资料”模块文件包含两部分:center_main.html,center_main.js
以“组用户”登录 http://localhost/imart/default.manager 点击节点菜单管理-->菜
单设置,新建页面“中心资料”,配置 URL:center_demo/center_main.jssp,如下图:
图 1.1.1
1.1.2.2. 主界面(以“材料”版面为例)
以“一般用户”登录 http://localhost/imart/default.portal,点击“材料”树节点,
得到“材料”主界面,参考如下图:
3
图 1.1.1
1.2. 页头显示及页面跳转
1.2.1. 功能描述: 页头部分的显示。
页头部分包含:显示页面标题,提供新建记录,返回主页面,刷新页面等链接。
1.2.2. 操作描述:
显示页面标题。
点击“新建”的链接,进入新建记录页面。
点击“返回”的链接,返回至主界面或者其他父页面。
点击“刷新”的链接,刷新该页面。
页头显示效果,参考如下图:
1.2.3.
Script Development Model
HTML 程序清单如下:
center_main.html 代码如下:
4
JS 程序清单如下:
center_main.js 代码如下:
var titleMessage
var newMessage
= MessageManager.getMessage("sage_message.centre_data.title");
= MessageManager.getMessage("sage.common.001");
function init(request) {
}
}
版面效果如下图:
5
跳转页面:
点击“新增”图标跳转新增记录版面:
新增版面文件路径为:
/center_demo/center_new.html
/center_demo/center_new.js
type 为 form 的 IMART 标签代码如下:
1.3. 记录列表
1.3.1. 功能描述:以列表的形式展示记录
1.3.2. 操作描述:
点“中心资料”树节点,得到主界面,记录显示成列表。
记录列表效果,参考如下图:
图 1.2.1
6
1.3.3.
Script Development Model
HTML 程序清单如下:
center_main.html 代码如下:
说明:
使用 Table 标签,显示成列表。
使用 type 为 string 的
标签,显示相应 Js 初始化变量 editMessage
7
使用 type 为 repeat 的标签,循环相应 Js 中初始化的 centerList 变量。
JS 程序清单如下:
center_main.js 代码如下:
var titleMessage
var newMessage
var editMessage
var centerList ;
= MessageManager.getMessage("sage_message.centre_data.title");
= MessageManager.getMessage("sage.common.001");
= MessageManager.getMessage("sage_message.edit");
var centerLables = new Object();
centerLables.center_id=
MessageManager.getMessage("sage_message.centre_data.centre_code");//中心編號
centerLables.center_name=
MessageManager.getMessage("sage_message.centre_data.centre_name");//中心名稱
function init(request) {
getCentreData();
}
function getCentreData() {
var result = null;
var sql
var res
if (!res.error && res.countRow>0)
{
= "SELECT * FROM CENTER_INFO ";
= DatabaseManager.select(sql);
centerList = new Array();
for(var loop in res.data) {
centerList[loop] = new Object();
centerList[loop].center_id = res.data[loop].center_id;
centerList[loop].center_name = res.data[loop].center_name;
}
}
}
说明:
页面初始化时,执行相应 Js 的 init 方法,在 Js 中定义变量 centerList,从数据库中
查出显示数据,保存在 centerList 变量中。
Intra-mart 提供方法 MessageManager.getMessage("sage.common.001");中的
“sage.common.001”定义在 imart\conf\message 下 properties 文件中。
版面效果如下图:
8