【问题标题】:parsing xml into jquery将xml解析成jquery
【发布时间】:2012-09-17 00:23:38
【问题描述】:

我在 jquery 中解析 xml。我想在“alert()”运行时看到一行符号。

这里是xml:

<?xml version="1.0" encoding="utf-8"?>
<charlist>
    <list>
        <title>symbol1</title>
        <chr><![CDATA[√,∽, ∝, ∵, ∫, ∬, ∈, ∋, ⊆]]></chr>
    </list>
    <list>
        <title>symbol2</title>
        <chr><![CDATA[①, ②, ③, ④, ⑤, ⑥, ⑦, ⑧]]></chr>
    </list>
    <list>
        <title>symbol3</title>
        <chr><![CDATA[㉠, ㉡, ㉢, ㉣, ㉤, ㉥, ㉦, ㉧]]></chr>
    </list>
    <list>
        <title>symbol4</title>
        <chr><![CDATA[㎕, ㎖, ㎗, ℓ, ㎘, ㏄, ㎣, ㎤]]></chr>
    </list>
</charlist>

这是我做的jquery。

$.ajax({
    type: "get",
    url: "XMLFile1.xml",
    dataType: "xml",
    success: function (xml) {
        $(xml).find('list').each(function () {
            var title = $(this).find("title").text();
            var chr = $(this).find("chr").text();
            alert(chr);
        });
    }
});

运行后出现三行。 "√,∽, ∝, ∵, ∫, ∬, ∈, ∋, ⊆" 然后, ㉠, ㉡, ㉢, ㉣, ㉤, ㉥, ㉦, ㉧ 然后, ㎕, ㎖, ㎗, ℓ, ㎘, ㏄、㎣、㎤。 我只想查看我在 jquery 中按数组选择的一行。 例如。如果我输入“alert(chr[1])”,第二行会出现 ㉠、㉡、㉢、㉣、㉤、㉥、㉦、㉧。“alert”只出现一行。 谁能帮我解决这个问题???

【问题讨论】:

  • 您是说要将这些字符行放在一个数组中以便单独显示吗?
  • 您似乎在 13 日问了一个几乎相同的问题。您应该删除其中一个。
  • 是的,我只想显示一行,我在“alert(chr[])”上放了一个数字。

标签: jquery xml parsing


【解决方案1】:

如果我对您的理解正确,以下示例应该可以帮助您了解如何从您的 xml 构建数组:

 var xml = '<?xml version="1.0" encoding="utf-8"?>\
<charlist>\
    <list>\
        <title>symbol1</title>\
        <chr><![CDATA[√,∽, ∝, ∵, ∫, ∬, ∈, ∋, ⊆]]></chr>\
    </list>\
    <list>\
        <title>symbol2</title>\
        <chr><![CDATA[①, ②, ③, ④, ⑤, ⑥, ⑦, ⑧]]></chr>\
    </list>\
    <list>\
        <title>symbol3</title>\
        <chr><![CDATA[㉠, ㉡, ㉢, ㉣, ㉤, ㉥, ㉦, ㉧]]></chr>\
    </list>\
    <list>\
        <title>symbol4</title>\
        <chr><![CDATA[㎕, ㎖, ㎗, ℓ, ㎘, ㏄, ㎣, ㎤]]></chr>\
    </list>\
</charlist>';

var parsed = $.parseXML(xml);

// declare the array
var chr = new Array();

// build the array by looping through the list elements
$(parsed).find('list').each(function(i,listElement){
    chr[i] = listElement.getElementsByTagName('chr')[0].textContent; 
});​

// will give an alert box with the string content of the chr element in the the second list element, which is actually "①, ②, ③, ④, ⑤, ⑥, ⑦, ⑧"
alert(chr[1]);

【讨论】:

  • 我想你明白我想要什么,但它仍然显示所有行。
  • 行的意思是“㎕, ㎖, ㎗, ℓ, ㎘, ㏄, ㎣, ㎤”。我看到三个框,例如第一个,“√,∽,∝,∵,∫,∬,∈,∋,⊆”,第二个①,②,③,④,⑤,⑥,⑦,⑧,第三个㉠,㉡, ㉢、㉣、㉤、㉥、㉦、㉧、第四㎕、㎖、㎗、ℓ、㎘、㏄、㎣、㎤。我只想看到我在“alert(chr[]) 上放了一个数字。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-04-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多