快速业务通道

使用XForms和Ruby on Rails开发小型门诊管理系统,第2部分 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-14
; </div> <div id="idNumber"> <xf:input ref="Id"> <xf:label>Insurance ID Number(###-##-####):</xf:label> </xf:input> </div> <div id="holder"> <xf:select1 ref="PolicyHolder"> <xf:label>Are you the policy holder?</xf:label> <xf:item> <xf:label>Yes</xf:label> <xf:value>true</xf:value> </xf:item> <xf:item> <xf:label>No</xf:label> <xf:value>false</xf:value> </xf:item> </xf:select1> </div> <div id="copay"> <xf:input ref="Copay"> <xf:label>Co-pay :contentlt;/xf:label> </xf:input> </div> <div id="symptoms"> <xf:textarea ref="Symptoms"> <xf:label>Please describe your symptoms:</xf:label> </xf:textarea> </div> <div id="submit"> <xf:submit submission="submit-info"> <xf:label>Submit Information</xf:label> </xf:submit> </div> </p> <a href="kiosk/list">Back to List</a> </body> </html>

使用XForms和Ruby on Rails开发小型门诊管理系统,第2部分(4)

时间:2011-11-29 ibm Michael Galpin

下面对 清单 3 中的 XForms 简单介绍一下。它有一个模型和一个实例。实例是前面定义的患者信息数据模型的空白版本。提交是模型的一部分。提交将把模型实例传递给提交动作属性中指定的 URL。表单体包含一系列的 XForms 元素。每个元素都使用 ref XPath 绑定到模型实例。无论用户在表单中输入什么数据,都将绑定到模型实例。在浏览器中打开 XForms 将看到类似图 1 所示的结果。

图 1. 患者 XForms

使用XForms和Ruby on Rails开发小型门诊管理系统,第2部分 - 编程入门网

虽然不够完美,但确实是一个具备所需功能的 XForm。有几点需要注意:

.

首先,这是一个 XHTML 页面,而不是通常的 HTML 页面。如果将页面扩展名改为 .html 或者 .htm,就无法正确地呈现。这是因为 XForms 要求使用 XHTML,因此 Mozilla 插件对 HTML 页面不起作用。

其次,由于是 XHTML,因此仍然支持 CSS。这是改变页面外观的最简单方式。很快将使用 CSS 作为数据验证的一部分。

最后,还要注意 URL http://localhost:3000/patient.xhtml。上例中的页面由 Mongrel Web 服务器上的 Ruby on Rails 应用程序提供。该页面是静态的,因此只需要将其复制到 Rails 应用程序的 public 目录。也可使用默认的 WEBrick Web 服务器,但是需要额外配置才能支持 XHTML 页面。而 Mongrel 不需要额外的配置就能支持 XHTML 页面。

如前所述,提交表单将触发模型实例的 POST。但是在处理 post 之前需要进行某些验证。

验证

数据输入最常见的任务之一就是检查输入的数据。通常最好在客户机完成,以免把无效的数据提交到系统后端。一般来说,这需要编写 JavaScript 提取数据然后执行某些规则(也许是正则表达式)。幸运的是 XForms 在这方面做了很多简化。XForms 使用的是 XML,XML: XML schema 定义了完善的数据验证语法。使用前面 清单 2 定义的模式为新建的 XForms 添加验证,如清单 4 所示。

使用XForms和Ruby on Rails开发小型门诊管理系统,第2部分(5)

时间:2011-11-29 ibm Michael Galpin

清单 4. 带有验证模式的 XForms 模型

  <title>Patient Information</title>
<style type="text/css">
@namespace xf url("http

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号