2017-08-31 115 views
0

有沒有辦法獲得特定元素內的所有屬性的字符串?Selenium(C#) - 如何獲取元素屬性的字符串

例如,假設我的元素是在網頁中以下內容:

<input id="SandBox1" checked="" class="float_right red white_stripes" value ="654288"> 

如果能夠得到這樣的字符串變量,其中將有一個字符串屬性名稱和它們的值呢?

+0

一個>隨着你定的例子,你有什麼期望的字符串? –

+0

我希望得到的字符串是這樣的: id =「SandBox1」checked =「」class =「float_right red white_stripes」value =「654288」 – Tscott

+0

使用javascript執行程序以下查詢:Element.outerHTML –

回答

1

下面的代碼應該爲你做。

IJavaScriptExecutor js = (IJavaScriptExecutor)driver; 
var elem = driver.FindElement(By.Id("SandBox1")); 

string attributes = (string)js.ExecuteScript("var re = /<[^ ]+([^>]+)/i; return re.exec(arguments[0].outerHtml)[1];", elem); 

但它會在情況下,屬性也有值

+0

我想這是我正在尋找的,但我跑了幾次,字符串不斷出現null。我會繼續試驗它,並在這方面回覆你。 – Tscott

+0

你可以嘗試用'outerHTML'替換'outerHtml'嗎? –

+0

這對我有效!謝謝! – Tscott