问题标签 [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.
javascript - chrome 和 firefox 中的 document.evaluate
我需要这方面的帮助。我是在 javascript 中使用 XPath 的新手,这让我很困惑。
我的脚本使用 xmlhttp 检索网页的内容,然后将其包装在“div”中:
我需要访问这个包装部门的正文内容,我正在使用 Xpath 来执行此操作:
虽然这在 Firefox 中运行良好并检索了所需的 XpathObject,但它并没有为 google chrome 浏览器提供所需的结果。它不是返回创建的(并作为 contextNode 传递)的“div”元素的 bodyContent 划分,而是返回当前文档页面的 bodyContent。
我已经检查并在 chrome 中 - 收到了正确的 xmlhttp.reponseText。
关于这个有什么想法吗?
谢谢,
javascript - document.evaluate 正则表达式
我想以这种形式获取所有带有 href 属性的“a”元素:http(s)://any.example.com 其中 any 可以是只包含字母和/或数字的字符串。我是 regex 和 XPath 的新手,所以我做错了。我想出了正则表达式,但我不确定它是否 100% 正确:代码:
所以 XPath 看起来像这样: 代码:
但它不起作用。
如果有人可以帮助我,我将不胜感激。
javascript - document.evaluate 不适用于内容脚本
这是给出错误的代码,它给出:
有人可以告诉我问题是什么吗?
xml - 如何在 document.evaluate() 中使用 XPath contains() 函数?
我有这部分代码,我一直在使用它来根据搜索的名称过滤掉字段。问题是我需要它对用户可以输入的内容有点宽容。所以我必须使用该contains
功能。我已经让它在其他代码片段上工作,但不确定如何将它与以下内容一起使用:
对不起,如果引号/转义有点混乱。我没有打开 IDE 来检查我的错误,我正在准备工作。
所以可能能够看到 containsSearchTerm 是我想要获取表单的值并使用该contains
函数处理它。这是如何实现的?
请注意,我通常对 XML、XSLT 和 XPath 还是很陌生,所以如果可能的话,我需要稍微简化一下。
回复迈克尔·凯-
嗨,我正在尝试将搜索到的术语/单词应用于 XSLT 表中的作者字段。是的,你是对的,这就是我想要做的。编辑样式表并在输入表单中应用条件集。到目前为止,我一直在使用预构建的功能。根据需要进行修改。如果对要搜索的输入值进行硬编码,我可以使包含在外部工作。但是,我想按原样“即时”执行此操作,并且我真的不确定如何在我所追求的环境中使其工作。我实际上拥有的是在表单中构建的查询 - 指定要搜索的字段、操作数和搜索词。但我不想搜索整个字符串,因为这有点不灵活 - 所以我想使用 contains 函数来允许搜索灵活性。
谢谢你的帮助
javascript - 在 Chrome 中评估 xpath 表达式
我正在尝试使用 xpath 表达式和 javascript从该页面http://www.money.pl/pieniadze/的表中提取几行。我可以将整个页面显示为弹出窗口,但我无法使用 document.evaluate() 评估 xpath 表达式;尝试使用 XPathResultType 但没有结果。有人可以帮忙吗?
这是我的背景页面:
这是弹出页面:
javascript - 使用 document.evaluate 时未定义 XPath 元素/对象
如何修复常规 JavaScript 代码,使其不显示“未定义”并显示输入字段的值?jQuery 代码工作正常,并在同一页面上正确显示输入字段值。
常规 JavaScript:
jQuery 1.7.1 代码:
javascript - 有没有办法在 Selenium WebDriver 中使用 JavaScript 通过 XPath 获取元素?
我正在寻找类似的东西:
我需要使用 JS 获取元素的 innerHTML(在 Selenium WebDriver/Java 中使用它,因为 WebDriver 本身无法找到它),但是如何?
我可以使用 ID 属性,但并非所有元素都有 ID 属性。
[固定的]
我正在使用 jsoup 在 Java 中完成它。这适合我的需要。
javascript - 我想添加时间?
我有一个自动提交或Click
(按钮)代码,我想在此代码中添加 2 秒的时间延迟?
代码在这里:
请帮忙,谢谢!
javascript - IE JavaScript 错误:document.evaluate 非法 # 字符
此脚本仅支持 IE
我有这个:
使用已知的 xpath;
xpath是:
为什么我会收到此错误消息:
一个工作示例,简单的一个:http: //jsfiddle.net/gWpcU/6/
崩溃的例子:http: //jsfiddle.net/YkwTM/
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 的属性都表示同样的错误。)