2011-11-22 112 views
10

我需要知道的是,是否存在可在所有主流浏览器中针对xsd验证xml的解决方案。我没有时间自己创建实际的验证功能。这是一个需要在2周内完成的项目,作为我的学徒考试。使用JS/jQuery验证xml针对xsd

做一个XML验证程序作为jQuery登录会很好。所以我有2个问题。

在JS或jQuery中是否有预制的xml验证插件/功能,如PHP的http://php.net/manual/de/domdocument.schemavalidate.php?没有ActiveX,因为ActiveX只支持IE(afaik)。如果我没有记错,用户总是必须同意它,这是不方便的。

我总是发现,自我验证的XML(无模式)或用ActiveX做的东西。所以,如果没有xml验证插件/功能,我可以通过一个xml和一个xsd,我想快速介绍一下我将如何自己做,所以我可以更好地将其图像化。也许这对于使用xsd进行自己的xml验证很快很多工作,对吧?

感谢

+0

**从哪里来的XSD和XML来到您的脚本? – skafandri

+0

我不是原始问题的作者,但在我的情况下(这是添加赏金的原因)都将托管在同一台服务器上,该服务器也提供HTML和JavaScript源。 – Chris

+0

@Chris,如果该解决方案只能在Internet Explorer中运行,会好吗? –

回答

9

我会建议执行Ajax请求,在服务器上验证并将响应返回给JS。

+2

这将是一个不错的和有效的解决方法继续前进。 但可悲的是,不是在客户端验证它的问题的解决方案。 – Chris

+0

转到Ajax并验证它在服务器端。目前没有pure-js解决方案 - 只有使用ActiveX的解决方案。 – c2h5oh

8

我知道你更喜欢jQuery解决方案,但有些东西是在JS中开发的,并且只按照你想要的方式执行。

http://syssgx.github.io/xml.js/

这个链接给出3种方式相互作用的:

  • (经由浏览器)拖动和放下XML文件,然后验证;
  • (通过浏览器)复制&将XML内容粘贴到“textareas”中,然后验证;
  • (import/inlcude)将JS文件添加到您的web应用程序,然后验证(如页面所示)。