【问题标题】:How to read XML value into Javascript or jQuery如何将 XML 值读入 Javascript 或 jQuery
【发布时间】:2018-05-23 19:21:28
【问题描述】:

我有一些我正在尝试用 jQuery 解析的 XML,我如何能够在任何选定的标签中获取值?我试图让“fn”的值显示到控制台中。

var fn = "";    
$.ajax({
    type: "GET",
    url: "xmldata.xml",
    dataType: "xml",
    success: function(xml) {
        $(xml).find('form1').each(function(){
            fn = $(this).find('fn').value();
            console.log(fn);            
        });
    }
});
console.log(fn);

<?xml version="1.0" encoding="UTF-8"?>
<afData>
    <afUnboundData>
        <data />
    </afUnboundData>
    <afBoundData>
        <xdp:xdp xmlns:xdp="http://ns.adobe.com/xdp/" timeStamp="2018-05-22T15:17:16Z" uuid="3cd001ed-7c9a-46f7-af5f-3b9e32b11578">
            <xfa:datasets xmlns:xfa="http://www.xfa.org/schema/xfa-data/1.0/">
                <xfa:data>
                    <form1>
                        <fn>John</fn>
                        <ln>Doe</ln>
                        <about>My name is John Doe</about>
                    </form1>
                </xfa:data>
            </xfa:datasets>
        </xdp:xdp>
    </afBoundData>
    <afSubmissionInfo>
        <lastFocusItem>guide[0].guide1[0].guideRootPanel[0].panel1[0]</lastFocusItem>
        <computedMetaInfo />
    </afSubmissionInfo>
</afData>

【问题讨论】:

    标签: javascript jquery html xml aem


    【解决方案1】:

    使用text() 获取标签内的文本,value() 用于表单控件值。

    var fn = "";    
    $.ajax({
        type: "GET",
        url: `data:text/xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%0D%0A%3CafData%3E%0D%0A%20%20%20%20%3CafUnboundData%3E%0D%0A%20%20%20%20%20%20%20%20%3Cdata%20%2F%3E%0D%0A%20%20%20%20%3C%2FafUnboundData%3E%0D%0A%20%20%20%20%3CafBoundData%3E%0D%0A%20%20%20%20%20%20%20%20%3Cxdp%3Axdp%20xmlns%3Axdp%3D%22http%3A%2F%2Fns.adobe.com%2Fxdp%2F%22%20timeStamp%3D%222018-05-22T15%3A17%3A16Z%22%20uuid%3D%223cd001ed-7c9a-46f7-af5f-3b9e32b11578%22%3E%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%3Cxfa%3Adatasets%20xmlns%3Axfa%3D%22http%3A%2F%2Fwww.xfa.org%2Fschema%2Fxfa-data%2F1.0%2F%22%3E%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Cxfa%3Adata%3E%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Cform1%3E%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Cfn%3EJohn%3C%2Ffn%3E%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Cln%3EDoe%3C%2Fln%3E%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Cabout%3EMy%20name%20is%20John%20Doe%3C%2Fabout%3E%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3C%2Fform1%3E%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3C%2Fxfa%3Adata%3E%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%3C%2Fxfa%3Adatasets%3E%0D%0A%20%20%20%20%20%20%20%20%3C%2Fxdp%3Axdp%3E%0D%0A%20%20%20%20%3C%2FafBoundData%3E%0D%0A%20%20%20%20%3CafSubmissionInfo%3E%0D%0A%20%20%20%20%20%20%20%20%3ClastFocusItem%3Eguide%5B0%5D.guide1%5B0%5D.guideRootPanel%5B0%5D.panel1%5B0%5D%3C%2FlastFocusItem%3E%0D%0A%20%20%20%20%20%20%20%20%3CcomputedMetaInfo%20%2F%3E%0D%0A%20%20%20%20%3C%2FafSubmissionInfo%3E%0D%0A%3C%2FafData%3E`,
        dataType: "xml",
        success: function(xml) {
            $(xml).find('form1').each(function(){
                fn = $(this).find('fn').text();
                console.log(fn);            
            });
        }
    });
    //console.log(fn);
    &lt;script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"&gt;&lt;/script&gt;

    【讨论】:

      猜你喜欢
      • 2021-03-14
      • 1970-01-01
      • 2017-08-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-08-10
      相关资源
      最近更新 更多