81. Domino视图Web展现技术胪列

以列表形式显示大量数据是各种开发中最常见和基本的需求之一。在数据保存在关系型数据库的Web开发中,程序员要处理的是分开的两项任务,一是从数据库中查询记录,二是在视图层生成显示这些数据的HTML。如何分页是主要问题。Domino以界面为导向的开发风格和不适于动态查询的文档型数据库使得程序员面临完全不同的处境和问题。预先设计的视图不仅定义了包含的文档,也设置了外观属性,集数据层和外观层的功能于一体。在客户机中,视图拥有和设计时同样的外观,无需编程。在Web端,因为Domino默认生成的视图HTML过于简陋,程序员还是需要各种各样的方法改进其外观和操作性。下面就胪列了我曾经接触和使用过的Domino视图Web展现技术,并做了简单分析和评价。

1.       使用Domino生成的HTML

优点:

  • 无需编程。

缺点:

  • 显示原始简陋。

2.       使用Applet

优点:

  • 无需编程。
  • 操作与客户端一致。

缺点:

Applet的所有缺点,包括:

  • 用户所在机器需安装Java运行时,虽然目前大部分机器都已安装。
  • 需要下载和载入Applet,速度较慢。
  • 与网页整体风格不一致。
  • IBM早已放弃其更新,实际上自Java7 Update 51起因为没有提供Java运行时要求的权限属性(Permission Attribute)Domino自带的Applet都无法在浏览器里运行。

 3.       将视图内容显示为HTML

这种方法需要在视图的列公式内计算产生最终的HTML。

优点:

  • 可以精细地自定义显示的内容。

缺点:

  • 笨拙繁琐,难以维护。
  • 该视图只能用于Web显示,无法通用于客户端显示和后台查询。
  • 列中的大量HTML计算,对视图索引的速度和大小都有负面影响。

4.       在视图原始HTML载入后用JavaScript调整修饰

Domino早期Web开发中常使用的方法,在显示视图的页面的onload事件里运行一段脚本,修改视图原始的HTML。Domino产生的视图HTML原始、丑陋、古怪且总不改进,使用这种方法需要透彻了解这些HTML的细节。

优点:

  • 能够完全自定义视图的展示,将其修改成任何所需的外观。
  • 脚本写得足够灵活的话,还能配合代理获取视图的外观属性以设置列
  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
译者序 前言 第1章 Domino Web开发综述 1 1.1 为什么使用Domino 1 1.2 Domino是怎样运行的 1 1.2.1 Domino与传统数据库的区别 1 1.2.2 DominoWeb 2 1.3 开发部件 2 1.4 其他工具 3 1.5 简单的Domino Web软件例子 10 参考信息 14 本章小结 14 第2章 使用表单 16 2.1 关于表单 16 2.2 在表单中使用公式 17 2.2.1 数组和多值域 18 2.2.2 公式的类型 18 2.2.3 例子:一个组合框域 20 2.2.4 例子:$$Return域的公式 22 2.3 在表单中使用Web元素 22 2.3.1 嵌入Web元素 22 2.3.2 创建特殊用途的模板表单 22 2.3.3 例子:在$$View Template Default 表单中嵌入导航器 23 2.3.4 例子:动态嵌入式导航器 24 2.4 在表单和表单对象中使用HTML属性 25 2.4.1 标记的例子 26 2.4.2 例子:RTF文本域的属性 27 2.4.3 例子:cookie 27 2.5 使用表单操作按钮 28 2.6 使用热点 30 2.7 在表单内使用HTML 31 2.7.1 例子:单个类视图 31 2.7.2 例子:显示附属图形文件 36 2.7.3 例子:把文本域显示为文本区域 39 2.8 在表单中使用CGI变量 40 2.9 表单和搜索 42 2.9.1 定制视图搜索表单 43 2.9.2 例子:定制搜索界面 44 2.9.3 定制Site Search表单 47 2.9.4 定制Search Results表单 47 2.9.5 例子:对搜索结果表单的定制 48 2.10 定制表单提交按钮 49 2.11 使用隐藏域 49 2.12 把RTF文本显示为一个小应用程序 50 参考信息 51 本章小结 51 第3章 使用视图进行工作 54 3.1 关于视图 54 3.2 视图Web 55 3.3 使用选择公式 56 3.4 使用视图公式 57 3.5 使用表单公式 57 3.6 使用视图图标 58 3.7 创建视图操作按钮 59 3.8 使用单个类视图 60 3.9 在视图中使用HTML通用文本 62 3.9.1 改变行的格式 63 3.9.2 在视图中显示Java小应用程序和图像 63 3.9.3 HTML通用文本 64 3.9.4 改变视图连接的动作 66 3.9.5 控制视图连接的另外一种方式 68 3.9.6 例子:在视图中使用java Script 68 3.10 在表单中使用视图 70 3.10.1 在表单中嵌入视图 70 3.10.2 创建视图模板 70 3.10.3 例子:使用表单在视图中添加 功能 71 3.10.4 例子:使用视图在表单中添加 功能 73 3.10.5 例子:创建多个类的视图 76 3.11 在小应用程序表单中显示一个视图 79 参考信息 80 本章小结 80 第4章 使用帧结构、大纲和其他设计 元素 82 4.1 简介 82 4.2 在帧结构中设计 82 4.2.1 帧的不利之处 83 4.2.2 使用帧结构集设计元素 84 4.2.3 使用<FRAMESET>标签 88 4.3 使用大纲 94 4.3.1 同时使用帧和大纲 95 4.3.2 显示大纲小程序 97 4.4 使用其他的设计元素 97 参考信息 101 本章小结 101 第5章 编写JavaScript 103 5.1 简介 103 5.2 开始编写JavaScript 104 5.3 把JavaScript添加到Domino的表单中 106 5.4 验证域:Expense Report表单 107 5.5 计算域的值:Expense Report表单(续) 109 5.6 显示域相关的帮助 110 5.7 控制帧的使用 112 5.8 填充动态表框 114 5.9 例子:动态下载图像 117 5.10 例子:在一个滚动按钮中预先下载 图片 119 5.11 例子:显示对话框 121 5.11.1 Order Form表单 123 5.11.2 Select Pa
1. 选取视图的内容 @Trim @DbColumn 6 2. 隐藏判断常用的命令 6 3. 判断当前用户是否是“某个组”的成员,然后来显示和隐藏 6 4. 在Lotus Domino 中显示图 6 5. 链接JS文件 6 6. 删除文档的方法 7 7. $$return 域的使用 8 8. 将表单设计为视图或导航器模板 9 9. 为 Web 定制“表单已处理”确认信息 10 10. 定制出错信息 11 11. $$HtmlHead几种常用的技巧 11 12. Domino Designer 模板表 12 13. 角色判断 13 14. 判断文档是否正在被修改 13 15. 在只读的方式下返回($$return 13 16. 刷新表单 14 17. 怎样在文档里存照片? 14 18. 后台lotusscript如何取得前台表单中复选框所选择的项目表(b/s结构) 15 19. 试图的公式:附件下载 15 20. 有没有好一点的分页处理代码 16 21. 同一用户重复登录 18 22. Return to sender 19 23. Agent to copy values from 1 form to another 在同一个数据库中进行 22 24. 超越OLE – 通过COM结合MS Office与Notes应用 23 25. 读写关系数据库资料 28 26. 视图---excel,表单---word 32 27. 关于Web上的检索问题 35 28. 如何使用Notes与关系数据库进行信息交互? 37 29. 如何在IE里面实现notes中的 对话框表? 39 30. LotusDomino环境下编写Web浏览器多数据库检索程序 40 31. WINAPI函数 44 32. 用PowerBuilder访问Lotus Notes数据库 55 33. 如何在表单中加入计数器 58 34. 实现两个数据库间的数据追加 C/S 结构 60 35. 如何防止他人使用旧id和旧口令访问Domino服务器? 61 36. 在你的WEB站点上使用DOMINO群集 62 37. 在你的DOMINO WEB站点中插入.SWF文件 73 38. DOMINO R5的域搜索功能在WEB上的实现 77 39. Display Rich Text fields in a view 86 40. Auto-Launch a file attachment 87 41. Showing a response count without showing the responses 89 42. 常用的几个按钮收集 91 43. 在WEB上从视图删除文档技巧 93 44. 在Domino Designer中使用XML数据 96 45. 在Domino Designer上执行XML 100 46. Show single category view, the next stage 107 47. Checkboxes in a list box 108 48. Formatting a Notes view in HTML table for WEB 109 49. Jump to the end of a view (web agent) 111 50. Disabling actions until a page finishes loading 114 51. Web-based, fully customizable search 115 52. 从复选框中删除文档Deleting selected docs on Web 120 53. Debugging LotusScript Agents 121 54. Displays the contents of the Subject field in the first document in theExamples view. 124 55. Example: GetLastDocument method 125 56. Examples: GetNextDocument method 125 57. Example: GetFirstDocument method 126 58. Examples: FTSearch method 127 59. Examples: DeleteDocument method 128 60. Example: Deleting a document 129 61. Example: Creating a document 129 62. Examples: Locating documents within a view or folder 130 63. Example: Adding a document 135 64. Export to Excel 136 65. 连接ODBC 138 66. 特效 140 67. notes和Excel交换数据 141 68. NOTES的ODBC:(LS:DO) 142 69. Managing JavaScript "popup" windows 第一稿 144 70. HEAD元素使用集锦 147 71. 主页javascript特效19则 148 72. 关于创建、删除、编辑、打开和保存文档的 URL 命令 156 73. Domino URL 命令 158 74. 在打开有下面这段代码的页面时将会跳出一个468x60大小的小窗口 160 75. javascript的容错脚本 161 76. Web search with JavaScript 162 77. 如何防止他人使用旧id和旧口令访问Domino服务器 164 78. Fixing the Domino CheckBox Bug 165 79. Managing JavaScript "popup" windows 172 80. Quick, easy, foolproof field level help 175 81. Quick edit document link 176 82. Managing JavaScript "popup" windows 178 83. Svg: Pie-Eyed 181 84. Recebt Entries 182 85. Xin Calendar Mods 183 86. 答复文档 186 87. 公式语言 187 88. Resuable way to get URL parameters into fields 199 89. JSHeader 使用 201 90. JavaScript 帮助 201 91. Examples: Collecting documents by searching 207 92. 关于DOcumentContext 的属性 209 93. About data types 关于lotus Domino 的数据类型 210 94. CLng function 212 95. Using the DOM to replace "No documents found" 213 96. What you need and want to know about errors 217 97. Processing multiple documents from a view 221 98. Forcing attachments to always download 225 99. ODBCExample: GetValue method 247 100. ODBCResultSet class 248 101. Create a "Login" anchor link 251 102. 分类视图的开发技巧 253 103. 公式语言 255 104. Copy documents from one database to another 267 105. 定制搜索表单 268 106. UserName的属性及使用 275 107. Dynamic Content for Popup Windows 277 108. Shortcut when printing from a Java Agent 278 109. Lotus Script: Write # statement 279 110. Lotus Script: Input # statement 280 111. 使用代理生成 XML 284 112. 使用视图生成 XML 286 113. 执行算术运算 288 114. Keep URLs simple by making them relative 292 115. Quick, easy, foolproof field level help 294 116. Hiding attachments (without noscript tag!) 295 117. Listing search results in groups 296 118. 如何在表单中加入计数器? 300 119. 怎样限制一个WEB用户只有登陆才能使用数据库 302 120. Complete control when printing HTML from an agent 304 121. Simple multi-lingual forms using Domino 306 122. Stop double form submissions 308

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值