【问题标题】:JQuery & XML adjusting backgroundJQuery & XML 调整背景
【发布时间】:2013-06-18 10:56:41
【问题描述】:

我有以下问题,我不知道如何解决这个问题。

我有一个如下所示的 xml 文件:

<Item active="true" price="29.71" artnr="11123" group="fish"
      groupdescription="Fisch-Conv." headline="SeaWater
      src="images/test.png"
       />

基本上我需要找到组 vi 一个 jQuery,如果它是例如“鱼”,那么它会将背景图像更改为另一个.. 所以第四个,即如果组是“棒”,那么另一个图像将显示.. 如果没有组,它应该采用正文 css 中的默认背景图像。

有谁知道如何做到这一点?

【问题讨论】:

  • 这是解决方案的开始:if ($('&lt;Item active="true" price="29.71" artnr="11123" group="fish" groupdescription="Fisch-Conv." headline="SeaWater src="images/test.png" /&gt;').attr("group") == "fish")

标签: javascript jquery xml xml-parsing


【解决方案1】:

考虑一下这个 XML:

<?xml version="1.0"?>
    <Items>
        <Item active="true" price="29.71" artnr="11123" group="fish" groupdescription="Fisch-Conv." headline="SeaWater"  src="images/test.png"/>
        <Item active="true" price="29.71" artnr="11123" group="rods" groupdescription="Fisch-Conv." headline="SeaWater"  src="images/test.png"/>
        <Item active="true" price="29.71" artnr="11123" group="none" groupdescription="Fisch-Conv." headline="SeaWater"  src="images/test.png"/>
     </Items>

我将它存储在一个字符串中,然后在它上面运行 parseXML(),我将把它推入一个像这样的变量:

var xmlDoc= $.parseXML(myXmlString)

我现在可以将此 xmlDoc 变量用作 DOM 对象并遍历它,如果需要,将其作为参数传递给 $()。

$(xmlDoc)

现在,您可以阅读 find(), closest() 等并了解如何在 jQuery 中遍历。

例如,如果我想获得第一个Itemgroup,它位于&lt;Item&gt; 部分,我会这样做:

$("Items", xmlDoc).find("item")

然后,您将它收集在一个数组中并循环它以设置您的 bg:

var groups = $("Items", xmlDoc).find("Item").map(function () {
    return $(this).attr("group");
});
var $span = $("<span/>");

$.each(groups, function (i, group) {
    var $spanClone = $span.clone().attr("class", group).html("Class added :" + group + "</br>");
    $spanClone.appendTo("div");
});

就是这样。这是一个演示:http://jsfiddle.net/hungerpain/N3mYa/3/

【讨论】:

    猜你喜欢
    • 2012-01-14
    • 1970-01-01
    • 1970-01-01
    • 2020-11-15
    • 1970-01-01
    • 2022-12-31
    • 2012-12-12
    • 2018-12-23
    • 1970-01-01
    相关资源
    最近更新 更多