SyntaxError:带有xpath的意外标识符

时间:2013-11-20 15:14:00

标签: xpath

我正在学习xpath,我正在尝试从html usint xpath获取一些数据

我发现谷歌浏览器有一个“复制xpath”的选项,它很好用

但是对这个例子不起作用

<div id="site-main">
    <header class="main" role="banner">some divs      </header>
</div>

我在谷歌Chrome控制台上使用它

$x("//*[@id="site-main"]/header")

并返回“SyntaxError:Unexpected identifier” 我没有看到任何错误...你呢?

2 个答案:

答案 0 :(得分:3)

$x("//*[@id="site-main"]/header")
            ^         ^

标记的引号会导致错误 - 实际上,字符串会在=之后立即终止。

您必须转义XPath表达式中的引号。转义的方式取决于您使用的语言。如果它是Javascript,那么它将与\

$x("//*[@id=\"site-main\"]/header")

另请查看此问题:Escape quotes in JavaScript

答案 1 :(得分:2)

您可以在xpath查询中使用单引号:

$x("//*[@id='site-main']/header")