0

こんにちは、xml の解析に問題があります。だから - 私はいくつかのxmlタグからデータを読みたいと思っています。手伝って頂けますか?これは私のコードです。

    <data>
        <element name="name">Zook</element>
        <element name="image">img/icons/01/zook.png</element>
    </data>

とjquery

$(this).find("element").each(function(){
    var name = $(this).attr("name");
    $("#div").html('<span>' + name + '</span>')
});
4

5 に答える 5

1

このサンプル コードは、データを抽出します。

$.ajax({
   type: "GET",
   url: "path/to/your/xml.xml",
   dataType: "xml",
   success: function(xml){
   $(xml).find("element").each(function() {
          var name = $(this).find("name").text();
          var image = $(this).find("image").text();
          $("#div").html('<span>' + name + '</span>');
   });
});

ただし、現在の要素には二重の意味があるため、xml を再構築する必要があります。これを単純化して、データが次のようになるようにします。

<data>
  <element>
    <image>path/to/img.ext</image>
    <name>Name</name>
  </element>
</data>

お役に立てれば

于 2012-07-27T13:33:55.540 に答える
1

この リンク にアクセスするだけで、必要なものがすべて説明されます:)

$(xml).find("element").each(function()
 {
   $("#output").append($(this).attr("name") + "<br />");
 });
于 2012-07-27T13:28:13.853 に答える
0
$(xml).find("main_menu").each(function () {
    $(this).find("element").each(function(){
        var name = $(this).text();
        var image = $(this).text();

        $("#carousel_items").append('<span>' + name + '</span><span>' + image + '</span>')
    });
});

これが私のコードが今どのように見えるかです

于 2012-07-27T13:45:02.353 に答える
0
var name = $(this).text();

あなたの人生を楽にするはずです

于 2012-07-27T13:31:16.097 に答える
0
$(xml).find("main_menu").each(function () {
    var name, image;

    $(this).find("element").each(function() {
        // make sure they default to what they originally were if null
        // since one <element> has name other has image
        name = ($(this).attr('name')) ? $(this).text() : name;
        image = ($(this).attr('image')) ? $(this).text() : image;
    });

    // Build the items once you've looped through the elements within a <data> section
    $("#carousel_items").append('<span>' + name + '</span><span>' + image + '</span>')
});
于 2012-07-27T14:13:44.130 に答える