2011-03-23 45 views
3

我在使用JavaScript中的XPath在IE中訪問HTML元素時遇到問題? 我已經嘗試過使用selectNodes()方法,但它僅適用於XML,它不適用於用於HTML元素的XPath的 。如何在IE8中使用XPath訪問HTML元素?

document.setProperty("SelectionLanguage", "XPath"); 
var mydoc=document.loadXML(document); 
var nodes=mydoc.selectNodes("//input[@name='action']"); 

但它沒有返回任何元素。 任何人都可以建議我如何通過使用Javascript的XPath訪問IE中的HTML元素? 任何建議表示讚賞。

- 預先感謝。

+0

這可能是由於與Html元素相關的名稱空間造成的。只是猜測。 – 2011-03-23 07:39:46

+0

@Furqan:請您詳細說明一下嗎? – SmartSolution 2011-03-23 08:04:16

+0

在瀏覽器中呈現的Html具有這樣的html標籤,,xmlns屬性指定了所有html標籤所屬的名稱空間,因此無論何時想要訪問某個html元素,可以通過在標記名之前指定命名空間來實現,例如「// xs:input」。 – 2011-03-23 08:10:01

回答

2

,你可以嘗試以下方法,

瀏覽器可以使用以下方法來獲取 所有元素與給定的標籤, 無論命名空間,如果 文檔擔任 支持application/xhtml + xml或其他XML 類型:

var titles = document.getElementsByTagNameNS("*","input[@name='action']");