2015-06-08 52 views
0

我正在查看一些自動化腳本,這些腳本與Web門戶一起工作以節省大量煩人的工作。選擇窗口和這樣使命令道理給我,但也有很多看起來像getElementByID()參數說明

Set oSelect = wndw.document.getElementById("pvBody:PageTemplate:innerHolder:ctrlAddPassword:ddlSafename") 

或者

Set oSelect = wndw.document.getElementById("pvBody:PageTemplate:innerHolder:ctrlAddPassword:PasswordProperties:rptRequiredProperties:_ctl2:ctrlRequiredProperties:ddlValue") 

我明白了什麼程序在這裏做線:它選擇一個元素在頁面上工作,但大量的字符串讓我感到困惑。我知道,如果沒有網站本身,這可能意味着什麼,但這是我必須自己去做的。

我想知道如何找出我會放在那裏。它是否像檢查元素一樣簡單,還是需要深入研究頁面源以找出它的名稱?

回答

0

這些字符串是HTML元素的ID。有人顯然認爲適合選擇具有某種內部結構的ID,這大概是爲了使他們更容易找到/生成/處理/無論如何。不過,從HTML的角度來看,它們只是不透明的字符串。只要它們在頁面內部是唯一的,就可以命名爲"foo""bar"

如果你需要確定你要使用的元素的ID,你需要看看在任一頁面的源代碼,其中這樣的元素可能是這樣的:

<select id="pvBody:PageTemplate:innerHolder:ctrlAddPassword:ddlSafename"> 
    <option value="foo">23</option> 
    <option value="bar">42</option> 
    ... 
</select> 

或代碼生成的頁面源(實現生成ID的邏輯)。