我需要单击一个表单上的按钮,它看起来像这样
<button id="****" class="****">Click Me</button>
Run Code Online (Sandbox Code Playgroud)
我使用以下代码单击其他按钮工作正常,但这是因为其他按钮已value="*****"分配给它
$oButtons = _IETagnameGetCollection($oIE, "button")
For $oButton in $oButtons
If String($oButton.value) = "Click Me" Then
_IEAction($oButton, "click")
EndIf
Next
Run Code Online (Sandbox Code Playgroud)
我知道$oButton.value是什么获得了按钮的价值,但除此之外还有什么其他"操作符" value可以获得按钮的锚文本?
您发布的示例仅应在没有元素ID的情况下使用.ID始终是唯一的.
如果要单击的按钮具有ID,则可以将其用作该按钮的引用.
例:
HTML:
<button id="MyButton" class="someClass">Click Me</button>
Run Code Online (Sandbox Code Playgroud)
码:
$oBtn = _IEGetObjById($oIE, "MyButton")
_IEAction($oBtn, "click")
Run Code Online (Sandbox Code Playgroud)
除了.Value,你可以使用以下所有:
$oBtn.innerText
$oBtn.outerText
$oBtn.innerHtml
$oBtn.outerHtml
$oBtn.classname
$oBtn.id
$oBtn.name
$oBtn.href
$oBtn.src
$oBtn.click
$oBtn.focus
...
Run Code Online (Sandbox Code Playgroud)
请注意,您可以使用$ oBtn.value来读取或写入html元素的"Value"属性,但是对于例如."itemProp"属性$ oBtn.itemProp不起作用
例:
HTML:
<button id="MyButton" class="someClass" itemprop="streetAddressSubmit" >Click Me</button>
Run Code Online (Sandbox Code Playgroud)
这不会工作:
$ItempropValue = $oBtn.itemprop
Run Code Online (Sandbox Code Playgroud)
这是应该如何做到的:
$ItempropValue = $oBtn.getAttributeNode ('itemprop').NodeValue
Run Code Online (Sandbox Code Playgroud)