使用Jquery读取XML中的值:怎么做?

时间:2014-12-25 22:32:13

标签: jquery xml

在项目中,我尝试使用attribut data-mlid更改每个标记的内容。我有我的代码的第一部分,但没有办法找到如何进一步。我被困了......我希望你能够帮助我。

  1. 使用特定的attribut循环每个标记
  2. 解析XML以找回相关语言
  3. 的Javascript

    $(document).ready(function(){
        var lan = "fr" ;
        var multilan ;
            $.ajax({
                url: 'xml/multilan.xml',
                success: function(xml){
                    $("[data-mlid]").each(function(){
                        $(xml).find($(this).data("mlid")).each(function(){
                            //What to do now?? How to find the multilan text back?
                        });
                        $(this).text(multilan);
                    })
                }
            }); 
        });
    

    HTML

    <h2 class="stb-text-center" data-mlid="0001"></h2>
    

    XML

    <?xml version="1.0" encoding="utf-8"?>
    <translations>
        <multilan id="0001">
            <en>Welcome!</en>
            <fr>Bienvenue !</fr>
        </multilan>
    </translations>
    

    谢谢!

1 个答案:

答案 0 :(得分:1)

它是一个ID,在jQuery中,它们以#为前缀,所以它是

$(xml).find('#' + $(this).data("mlid")).each(function() {
    var en = $(this).find('em').text();
    var fr = $(this).find('fr').text();
});

此外,您应该将正确的dataType添加到ajax调用中,以确保使用$ .parseXML正确解析

$.ajax({
     dataType: 'xml',
     url:  ...