问题标签 [document.evaluate]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1593 浏览

javascript - chrome 和 firefox 中的 document.evaluate

我需要这方面的帮助。我是在 javascript 中使用 XPath 的新手,这让我很困惑。

我的脚本使用 xmlhttp 检索网页的内容,然后将其包装在“div”中:

我需要访问这个包装部门的正文内容,我正在使用 Xpath 来执行此操作:

虽然这在 Firefox 中运行良好并检索了所需的 XpathObject,但它并没有为 google chrome 浏览器提供所需的结果。它不是返回创建的(并作为 contextNode 传递)的“div”元素的 bodyContent 划分,而是返回当前文档页面的 bodyContent。

我已经检查并在 chrome 中 - 收到了正确的 xmlhttp.reponseText。

关于这个有什么想法吗?

谢谢,

0 投票
2 回答
864 浏览

javascript - document.evaluate 正则表达式

我想以这种形式获取所有带有 href 属性的“a”元素:http(s)://any.example.com 其中 any 可以是只包含字母和/或数字的字符串。我是 regex 和 XPath 的新手,所以我做错了。我想出了正则表达式,但我不确定它是否 100% 正确:代码:

所以 XPath 看起来像这样: 代码:

但它不起作用。

如果有人可以帮助我,我将不胜感激。

0 投票
1 回答
1124 浏览

javascript - document.evaluate 不适用于内容脚本

这是给出错误的代码,它给出:

有人可以告诉我问题是什么吗?

0 投票
3 回答
741 浏览

xml - 如何在 document.evaluate() 中使用 XPath contains() 函数?

我有这部分代码,我一直在使用它来根据搜索的名称过滤掉字段。问题是我需要它对用户可以输入的内容有点宽容。所以我必须使用该contains功能。我已经让它在其他代码片段上工作,但不确定如何将它与以下内容一起使用:

对不起,如果引号/转义有点混乱。我没有打开 IDE 来检查我的错误,我正在准备工作。

所以可能能够看到 containsSearchTerm 是我想要获取表单的值并使用该contains函数处理它。这是如何实现的?

请注意,我通常对 XML、XSLT 和 XPath 还是很陌生,所以如果可能的话,我需要稍微简化一下。


回复迈克尔·凯-

嗨,我正在尝试将搜索到的术语/单词应用于 XSLT 表中的作者字段。是的,你是对的,这就是我想要做的。编辑样式表并在输入表单中应用条件集。到目前为止,我一直在使用预构建的功能。根据需要进行修改。如果对要搜索的输入值进行硬编码,我可以使包含在外部工作。但是,我想按原样“即时​​”执行此操作,并且我真的不确定如何在我所追求的环境中使其工作。我实际上拥有的是在表单中构建的查询 - 指定要搜索的字段、操作数和搜索词。但我不想搜索整个字符串,因为这有点不灵活 - 所以我想使用 contains 函数来允许搜索灵活性。

谢谢你的帮助

0 投票
2 回答
5261 浏览

javascript - 在 Chrome 中评估 xpath 表达式

我正在尝试使用 xpath 表达式和 javascript从该页面http://www.money.pl/pieniadze/的表中提取几行。我可以将整个页面显示为弹出窗口,但我无法使用 document.evaluate() 评估 xpath 表达式;尝试使用 XPathResultType 但没有结果。有人可以帮忙吗?

这是我的背景页面:

这是弹出页面:

0 投票
1 回答
4548 浏览

javascript - 使用 document.evaluate 时未定义 XPath 元素/对象

如何修复常规 JavaScript 代码,使其不显示“未定义”并显示输入字段的值?jQuery 代码工作正常,并在同一页面上正确显示输入字段值。

常规 JavaScript:

jQuery 1.7.1 代码:

0 投票
11 回答
470584 浏览

javascript - 有没有办法在 Selenium WebDriver 中使用 JavaScript 通过 XPath 获取元素?

我正在寻找类似的东西:

我需要使用 JS 获取元素的 innerHTML(在 Selenium WebDriver/Java 中使用它,因为 WebDriver 本身无法找到它),但是如何?

我可以使用 ID 属性,但并非所有元素都有 ID 属性。

[固定的]

我正在使用 jsoup 在 Java 中完成它。这适合我的需要。

0 投票
1 回答
118 浏览

javascript - 我想添加时间?

我有一个自动提交或Click(按钮)代码,我想在此代码中添加 2 秒的时间延迟?

代码在这里:

请帮忙,谢谢!

0 投票
1 回答
473 浏览

javascript - IE JavaScript 错误:document.evaluate 非法 # 字符

此脚本仅支持 IE

我有这个:

使用已知的 xpath;

xpath是:

为什么我会收到此错误消息:

一个工作示例,简单的一个:http: //jsfiddle.net/gWpcU/6/

崩溃的例子:http: //jsfiddle.net/YkwTM/

0 投票
1 回答
2380 浏览

dom - 为什么 document.evaluate('.', document.body, null, XPathResult.ANY_TYPE, null).singleNodeValue 会抛出异常?

如果我告诉 XPath 求值器我想要一个XPathResult.FIRST_ORDERED_NODE_TYPE(8) 或ANY_UNORDERED_NODE_TYPE(9),我得到了该body元素,正如预期的那样——但所有其他结果类型都会产生一个The expression cannot be converted to return the specified type.异常(在 Firefox 中;WebKit 和 Opera 似乎不那么慷慨,只满足于而是命名它TYPE_ERR: DOM XPath Exception 52

到底是怎么回事?并且,为了清楚起见重新表述问题:为什么选择上下文节点是一个类型错误,而不是清楚地推断为单节点结果,这从 XPath 表达式本身(".",的同义词"self::node()")显而易见,至少对我自己来说是一个人?

(作为参考,触发错误的不是.singleNodeValue具体访问——所有 XPathResult 的属性都表示同样的错误。)