尝试在浏览器中为用户提供可编辑的XML页面。
例如,以下是XML的一部分。
<Employee name="John Doe" type="contract" ID="1000">
<Salary>10000</Salary>
<Email>johndoe@johndoe.com</Email>
</Employee>
当在浏览器(IE或FF)中向用户呈现上述内容时,用户应该能够突出显示属性或值。突出显示并按下第二个鼠标按钮时,将弹出一个菜单进行编辑。对于属性和标签,它可能类似于ID-TEST-PRESENT或ID-TEST-OPTIONAL。现在代替ID,该属性应在选中时更改为ID-TEST-PRESENT。
同样,对于值,可以显示文本框,用户可以在其中输入新值。然后,需要将此更新的XML文件发送到后端并保存。
这可行吗?如果是,那么最简单的方法是什么。
我一直在编写嵌入式应用程序。这是我在网络浏览器方面的第一次尝试。任何帮助表示赞赏。
答案 0 :(得分:1)
当然可行,但这不是微不足道的。至少不适合那些不习惯使用Javascript和操作DOM的人。您必须解析XML并在每个元素上使用Javascript事件侦听器创建HTML文档。
您可以尝试使用现有组件并在必要时进行修改。我在这里找到了类似的问题:
https://stackoverflow.com/questions/378205/web-xml-editor-with-xml-syntax-highlighting
除非您正在处理通用XML文件,否则最好只阅读XML并生成标准HTML表单。最简单的方法是将所有内容都基于数据库,如果需要,将数据库导出到后端进程。这使得添加/编辑多行数据更加简单
答案 1 :(得分:1)
创建用于编辑特定XML词汇表中的信息的界面的一种方法是使用XForms。 (我认为它是迄今为止最容易和最好的,但是YMMV。)给定适当的基础设施(见下文),使用XForms来描述所涉及的内容:
正如您所看到的,它比使用AJAX滚动您自己更简单(至少在您设置基础结构后)。
XForms所需的基础结构部分取决于您使用的XForms实现。
对于XForms的基于客户端的实现(例如来自AgenceXML的XSLTForms,或来自EMC的公式),您需要(a)服务器上的软件副本(对于XSLTForms,这意味着一个XSLT样式表,一个Javascript库和一个CSS文件),(b)可能是表单本身中的适当链接(如何执行此操作因实现而异),以及(c)愿意接受PUT请求的服务器。在某些情况下,它将是(c)最难设置,但任何提供WebDAV接口的服务器都会这样做,因此SVN具有自动版本控制,Apache(单独或在Subversion之上)以及其他工具都可以使用。
对于基于服务器的实现(例如Orbeon Forms或BetterForm),您需要安装XForms实现并在Web服务器上运行它;因为它们通常是servlet,所以你需要将它们放在servlet引擎中。一般来说,它们将附带某种形式的WebDAV服务器。
W3C和CWI的Steven Pemberton写了一篇有用的tutorial introduction to XForms;我保留了list of pointers以及其他与XForms相关的材料,这些材料也可能会有所帮助。
答案 2 :(得分:0)
为了做到这一点,你需要做很多工作。要进行通用编辑,您需要以下
这是一个简单的布局。它需要做很多工作。做一些研究
项目
答案 3 :(得分:0)