繁体   English   中英

如何使用JavaScript解析附加的XML代码?

[英]How do I parse the attached XML code using JavaScript?

我需要从XML文件读取数据。 这是XML文件中的数据。

<?xml version="1.0"?>
<application id="AndroidCoverFlow" name="AndroidCoverFlow" platform="general">
       <attributes datatype="ref" value="{"coverflowConfig":{"spaceBetweenRowItems":5,"projectionAngle":90,"isCircular":true,"rowItemWidth":5,"rowItemRotationAngle":180}}" name="viewConfig" platform="general" buckettype="basic"/>
       </application>

在指定的示例中,我想验证/读取coverflowconfig values.ie spaceBetweenRowItems,projectionAngle projectionAngle。

我希望这不是确切的 XML,因为它无效。 但是忘记了……假设它有效的,则可以使用DOMParser对其进行解析。

var parser = new DOMParser,
    xmlDom = parser.parseFromString(xml, 'text/xml');

var application = xmlDom.getElementById('AndroidCoverFlow'),
    attributes = application.getElementsByTagName('attributes');

var value = attributes[0].attributes.getNamedItem('value').value,
    jsonData = JSON.parse(value);

console.dir(jsonData);

演示: http : //jsbin.com/soxobuba/2/edit?js,控制台

小提琴http : //jsfiddle.net/abdennour/MUws7/

注意:

这不是XML代码,您可以通过以下方式进行检查: http : //www.w3schools.com/xml/xml_validator.asp

但是,如果它是XML代码,则可以使用jQuery之类的Javascript库,然后执行以下操作:

$(xml).find("attributes").each(function()
  {
   var myObject=$(this).attr("value")
   $("#output").html(myObject);
       myObject=myObject.replaceAll("'",'"')
      alert(myObject)
      coverflowConfig=$.parseJSON(myObject).coverflowConfig;
      alert('coverflowConfig.projectionAngle='+coverflowConfig.projectionAngle)


  });

小提琴http : //jsfiddle.net/abdennour/MUws7/

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM