<html>
<head>
<title>My HTML application</title>
<HTA:APPLICATION
id="frames"
border="thin"
caption="yes"
icon="http://www.google.com/favicon.ico"
showintaskbar="yes"
singleinstance="yes"
sysmenu="yes"
navigable="yes"
contextmenu="no"
innerborder="no"
scroll="auto"
scrollflat="yes"
selection="yes"
windowstate="normal" />
</head>
<frameset rows="60px, *">
<frame src="topo.htm" name="topo" id="topo" application="yes" />
<frame src="http://localhost/nph-psf.exe?HOSTID=AD&ALIAS=" name="conteudo" id="psyncLink" application="yes" />
</frameset>
</html>
在我的框架集中,我有一个网页加载。我无法编辑从
显示的代码http://localhost/nph-psf.exe?HOSTID=AD&ALIAS=
该页面有一个按钮,需要单击才能继续。我希望使用我的HTA应用程序自动执行该操作,以便在页面加载时自动为用户单击该按钮。
代码可以是VBScript或JavaScript。关键是要按PROGRAMATICALLY点击按钮,这样用户就不必。
我要点击的按钮具有以下HTML代码行
<INPUT border=0 type=image alt="Use a password" name="SUBMIT-password.pss" src="docs/pics/en-us/useapassword_button.jpg">
答案 0 :(得分:2)
你可以试试这个javascript。由于元素没有ID,我们必须通过Name来获取它,它返回一个数组。您也可以通过标记名获取,但我不确定在另一页上会有多少输入。
try{
window.frames[1].document.getElementsByName('SUBMIT-password.pss')[0].click();
}catch(Exception){
alert('hi');
}
答案 1 :(得分:2)
单向;
<script type="text/javascript">
function doClick(fr) {
var btn = fr.contentWindow.document.getElementsByName("SUBMIT-password.pss");
if (btn.length === 0) {
alert("no button!");
return;
} else {
btn[0].click();
}
}
</script>
<frameset rows="60px, *">
<frame src="topo.htm" name="topo" id="topo" application="yes" />
<frame src="http://localhost/nph-psf.exe?HOSTID=AD&ALIAS=" name="conteudo" id="psyncLink" application="yes" onload="doClick(this);"/>
</frameset>
</html>
答案 2 :(得分:0)
如果您有权访问正在加载的页面,则可以模拟按钮上的单击。我认为最简单的方法是点击jQuery。检查一下:http://api.jquery.com/click/。
在页面末尾添加一个点击它的小脚本,应该没问题。
如果您没有访问权限...您仍然可以操作dom来选择按钮并在页面加载到iframe时单击它,但会更难。