首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何创建基本的OpenMRS HTMLFormEntry表单

如何创建基本的OpenMRS HTMLFormEntry表单
EN

Stack Overflow用户
提问于 2017-06-24 02:13:43
回答 1查看 182关注 0票数 0

HTMLFormEntry是一种非常有效的保存表单的方法。您将创建XML,模块将在按submit时将输入转换为数据库记录。

我们如何呈现一个表单,例如在path/to/form.xml

我们是否必须在它自己的页面中呈现它,或者我们可以将它加载到页面中?

EN

回答 1

Stack Overflow用户

发布于 2017-06-24 04:37:26

1.从xml创建一个新的表单对象

选项1:利用public void HtmlFormEntry.HtmlForm.setXmlData(String xmlData)

代码语言:javascript
复制
import org.openmrs.module.htmlformentry.HtmlForm;

...

HtmlForm form = new HtmlForm();
form.setXmlData(xml);

选项2XML:如果您的尚未加载,请使用public static HtmlForm HtmlFormEntryUI.HtmlFormUtil.getHtmlFormFromUiResource()reference

  • 注意:relativeWebResourcePath是模块的/omod/src/main/webapp/resources目录的相对路径。
  • 参数为ResourceFactory resourceFactory, FormService formService, HtmlFormEntryService htmlFormEntryService, String providerAndPath

代码语言:javascript
复制
import org.openmrs.api.FormService;
import org.openmrs.module.htmlformentry.HtmlFormEntryService;
import org.openmrs.module.htmlformentry.HtmlForm;
import org.openmrs.module.htmlformentryui.HtmlFormUtil;

...

String htmlFormPath = thisModuleName+":"+relativeWebResourcePath;
ResourceFactory resourceFactory = ResourceFactory.getInstance();
FormService formService = Context.getFormService();
HtmlFormEntryService htmlFormEntryService = Context.getService(HtmlFormEntryService.class);
HtmlForm form = HtmlFormUtil.getHtmlFormFromUiResource(resourceFactory, formService, htmlFormEntryService, htmlFormPath);

2.使用FormEntrySession生成超文本标记语言并处理表单输入、提交等

代码语言:javascript
复制
import org.openmrs.module.htmlformentry.FormEntrySession;

...

FormEntrySession fes = new FormEntrySession(patient, form, request.session)
String html = fes.getHtmlToDisplay()

3.使用生成的html

FormEntrySession对象生成的html应该包含提交表单所需的所有逻辑。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44727638

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档