Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/86.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用jQuery.parseXML(数据)进行XML验证_Jquery_Xml_Xml Validation - Fatal编程技术网

使用jQuery.parseXML(数据)进行XML验证

使用jQuery.parseXML(数据)进行XML验证,jquery,xml,xml-validation,Jquery,Xml,Xml Validation,我想问一下是否可以使用验证XML字符串 我的意思是,我知道它用于解析XML,如果XML无效,我会收到一条错误消息,但是每次XML中出现一个小错误时,函数都会失败吗 我试着在谷歌上搜索,但我发现的只是解析,而不是验证 谢谢 不,不是通过jQuery(至少不是在Mozilla中,很可能是在其他非IE浏览器中) 在IE的情况下,loadXML中指出,“您不能使用它根据模式验证XML文档”,因此显然jQuery中使用的代码也不会验证 然而,处的一些代码似乎表明,在IE中(仅)使用正确的IE是可能的——至

我想问一下是否可以使用验证XML字符串

我的意思是,我知道它用于解析XML,如果XML无效,我会收到一条错误消息,但是每次XML中出现一个小错误时,函数都会失败吗

我试着在谷歌上搜索,但我发现的只是解析,而不是验证

谢谢

不,不是通过jQuery(至少不是在Mozilla中,很可能是在其他非IE浏览器中)

在IE的情况下,loadXML中指出,“您不能使用它根据模式验证XML文档”,因此显然jQuery中使用的代码也不会验证

然而,处的一些代码似乎表明,在IE中(仅)使用正确的IE是可能的——至少在Msxml2.DOMDocument的4.0版本中是如此——因为根据“MSXML解析器将根据DTD或模式验证您的文档,如果在文档中指定了DTD或模式”(除非validateOnParse属性设置为false)

但是,对于Mozilla和其他浏览器,它们不会执行验证(我以为它们在Ajax的DOMParser()中加载了外部DTD,但现在这似乎对我不起作用,而且在任何情况下,即使是实体也不会在常规网站中加载)

我不记得是否或将支持外部验证,但我认为您需要朝这种方向走


您需要使用XML吗?也许JSONSchema可以满足您的需求

+1.感谢你详细的回答,以及你提供的所有链接。我不是在使用这个XML,我只是在验证我们从其中一个服务提供商那里获得的XML。