我试图用Javascript提取flickr照片页面范围内的href的名称,其源代码如下:

    <span class="photo-name-line-1">
        <a href="/photos/humpty_dumpty/">
                                Humpty Dumpty
                        </a>
    </span>


我似乎得到了对象,但无法提取要在JavaScript中使用的文本:

        // get the span that contains user name
        photoname = document.evaluate("//span[@class='photo-name-line-1']/a/text()",
            document, null, XPathResult.FIRST_ORDERED_NODE_TYPE,
            null).singleNodeValue;

        alert('debug ' + photoname);


我的调试语句返回[Object Text],但无法将其作为可在Javascript中使用的变量。尝试过photoname.value photoname.InnerText,但都返回undefined

我怀疑这是换行符的问题;但是我无法实现normalize-space()来获取任何东西。

我正在寻找代码以获取值为Humpty Dumpty-的JS变量(对Xpath来说是非常新的)

最佳答案

您需要访问.textContent值。

alert('debug ' + photoname.textContent);

关于javascript - XPath获取带有换行符的跨度内的链接文本,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16739240/

10-11 11:14