我在这里搜索过的帖子但是找不到任何与我想做的事情有关的东西。基本上我想使用javascript为onClick调用vbscript。
有没有办法从使用Javascript onmouseover和onmouseout事件的按钮调用onClick事件的aVBScript?
我似乎无法让它发挥作用并需要帮助。下面是我的javascript代码片段以及我想呼叫的vb脚本:
Javascript代码:
<td align="center">
<input onMouseOver="window.status=me.value" onMouseOut="window.status=''" onMouseOver="window.status=me.value" onMouseOut="window.status=''" type="button" value="Impersonation" class="redBtn" onClick="openPopup('http://internal.mps.cardinal.net/cardcom/index.asp')" />
</td>
<td align="center">
<input onMouseOver="window.status=me.value" onMouseOut="window.status=''" onMouseOver="window.status=me.value" onMouseOut="window.status=''" type="button" value="ServiceNow" class="normalBtn" onClick="openPopup('https://cardinal.service-now.com/navpage.do')" />
</td>
我想做的是调用ServiceBow OnClick事件的vbscript。
我的VBscript: WScript.Quit Main
Function Main
Set IE = WScript.CreateObject("InternetExplorer.Application", "IE_")
IE.Visible = True
IE.Navigate "https://cardinal.service-now.com/navpage.do"
Wait IE
With IE.Document
On Error Resume Next
.GetElementsByName("EnterpriseID")(0).value = "admin"
.GetElementsByName("PASSWORD")(0).value = "admin"
End With
IE.Document.getElementByID("SignInBtn").Click
End Function
Sub Wait(IE)
Do
WScript.Sleep 500
Loop While IE.ReadyState < 4 And IE.Busy
Do
WScript.Sleep 500
Loop While IE.ReadyState < 4 And IE.Busy
End Sub
Sub IE_OnQuit
On Error Resume Next WScript.StdErr.WriteLine&#34; IE在脚本完成之前关闭。&#34; WScript.Quit 结束子
感谢您提供的任何帮助
答案 0 :(得分:5)
是的,你可以这样做,这个示例使用JS中的onmouseover/out
和VBScript中的onClick
。
<script type="text/vbscript">
Function MyVbAlert()
MsgBox("Hello from VB Script!")
End Function
</script>
<script type="text/javascript">
function myJsMouseOver(c) {
c.style.color = 'green'
}
function myJsMouseOut(c) {
c.style.color = 'black'
}
</script>
<span onclick="MyVbAlert()" onmouseover="myJsMouseOver(this)" onmouseout="myJsMouseOut(this)" >Click Me</span>
答案 1 :(得分:1)
我知道这已经过时了但我正在寻找一种方法来从使用javascript编写的新页面调用旧版VBScript。我使用了类似的东西:
<script language="javascript" type="text/javascript">
function clickProxy() {
document.getElementById("vbProxy").click(); // initiate click event on the button
}
</script>
<script language="vbscript" type="text/vbscript">
function runVB()
msgbox "VBScript!"
end function
</script>
然后在HTML中:
<input type="button" id="vbProxy" onclick="vbscript: runVB" value="VB Proxy" style="height:0px;width:0px"/>
<input type="button" onclick="clickProxy()" value="Click Me" style="height:0px;width:0px"/>
DOM元素可以看到javascript和vbscript,所以我用一个按钮来触发&#34;代理&#34;按钮,它又调用VBScript。你甚至可以通过将它们放入隐藏的输入字段来传递params(类型)。
我没有对上述情况进行测试,如果有任何错误,请道歉,但你明白了!