【问题标题】:$(this).getAttribute is not a function when using $.each XML Javascript使用 $.each XML Javascript 时,$(this).getAttribute 不是函数
【发布时间】:2015-01-23 19:26:28
【问题描述】:

我正在遍历一个 XML 文档并尝试获取每个文档的名称属性,但是 Chrome 一直告诉我 $(this).getAttribute("name"); 不是一个函数。有人知道发生了什么吗?

我看到了一个类似的帖子,但它是用于在按钮的onclick 属性中传递$(this),而不是用于迭代。希望我能对此事有所启发。

XML:

<?xml version="1.0" encoding="UTF-8"?>
<user>
<hotel_group name="Pueblo Bonita" id="1">
    <hotel>
        <name>Pueblo Bonita 1</name>
        <location>
            <address>123 Deer St.</address>
            <city>Montego Bay</city>
            <state>St. Ann's Parish</state>
            <country>Jamaica</country>
        </location>
        <hotel_code>556</hotel_code>
    </hotel>
    <hotel>
        <name>Pueblo Bonita 2</name>
        <location>
            <address>123 Caribou Dr.</address>
            <city>Negril</city>
            <state>Spanish Town</state>
            <country>Jamaica</country>
        </location>
        <hotel_code>555</hotel_code>
    </hotel>
    <hotel>
        <name>Pueblo Bonita 3</name>
        <location>
            <address>30 Milsborough Dr</address>
            <city>Kingston</city>
            <state>Kingston</state>
            <country>Jamaica</country>
        </location>
        <hotel_code>552</hotel_code>
    </hotel>
</hotel_group>
</user>

JS:

            $(xml).find("hotel_group").each(function (k, v) {
                if (!hotelGroups) {
                    hotelGroups = [];
                }

                hotelGroups[k] = $(this).getAttribute("name");

            });

【问题讨论】:

  • getAttribute 是原生方法,你可能需要.attr()
  • hotelGroups[k] = this.getAttribute("name"); 可以。

标签: javascript jquery xml loops dom


【解决方案1】:

我想你的意思是:

hotelGroups[k] = $(this).attr("name");

我不相信getAttribute 是一个有效的 jQuery 方法。

【讨论】:

  • 这行得通。谢谢你。我不敢相信我忘了改用.attr()!我觉得自己像个白痴!
  • this 是一个 DOM 元素节点。所以this.getAttribute('name') 也可以。
  • 是的,就是这样。谢谢
猜你喜欢
  • 1970-01-01
  • 2021-01-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-11-01
  • 2023-04-07
  • 1970-01-01
  • 2013-12-12
相关资源
最近更新 更多