例 4.21. 获取 method 为 "POST" 或 "post" 的表单(form)
var postforms = document.evaluate( "//form[translate(@method, 'POST ', 'post')='post']", document, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null);
本次 XPath 查询可以获取所有以 POST 方式提交的表单。首先,我们需要用 translate 函数将 method 属性的值中的字母大写变成小写。(XPath 2.0 有 lowercase 函数,但我还从来没用成功过。)其次,我们需要将首尾的空格去掉。我们可以将其整合到调用 translate 函数中,只要在第一个参数中加个额外的空格。因为在第二个参数中没有对应的字母,这样一来所有的空格就被去掉了。最后,我们就能将获得的属性值同 'post' 做比较。
实例
← 处理已渲染的页面
获取当前域名 →