如何获得watir点击执行javascript href?

时间:2013-12-11 18:02:56

标签: javascript watir-webdriver

我有一个按钮,其来源是

<a href="javascript:document.form1.submit()" class="lrg_button" style="float:right">Submit</a>

我想点击它,(等待结果屏幕返回)。

代码片段

browser.a(:text => "Submit").flash
browser.a(:text => "Submit").click

管理以闪烁按钮,但不提交表单。

如何在执行的href中获取javascript?

完整表格

<body>
<form name="form1" method="post" action="index.php">
<div id="heading" style="display:block; margin:0 auto; text-align:center; width:500; border:1px solid #ccc; width:700px; background:#e8e8e8; margin-top:40px ">
<img src="images/logosymbol.jpg" alt="logo">
<h1 class="loghead" style=" padding:20px 0; margin: 20px 0; color:#243f74">WELCOME TO COACHMASTER</h1>
<table class="login" align="center" border="0" cellpadding="0" cellspacing="0" width="80%"><tbody>
<tr><td>
<table align="center" cellpadding="0" cellspacing="0" width="100%"><tbody>
<tr><td class="logerror" colspan="2">Please enter your credentials</td></tr>
<tr><td class="logprmt">Name:&nbsp;</td>
<td class="logdata"><input name="UserName" size="16" type="text" value=""></td></tr>
<tr><td class="logprmt">Password:&nbsp;</td>
<td class="logdata"><input name="PassWord" size="16" onkeypress="return submitenter(this,event)" type="password"></td></tr>
<tr><td colspan="2">
<a href="javascript:document.form1.submit()" class="lrg_button" style="float:right">Submit</a>
</td></tr>    
</tbody></table>
</td></tr> 
</tbody></table>
</form>
</div>
</body></html>

更新 - .click命令IS向服务器发送内容。该日志包括“非常有帮助”的条目

IP    [date]  "-" 400 0 "-" "-" 

如果我实际上单击了按钮,它会将正确的POST发送到正确的URL,并按照我的预期登录。

1 个答案:

答案 0 :(得分:0)

document.form1返回undefined,因为您没有查询DOM的元素。将锚元素的href属性更改为:

<a href="javascript:document.getElementById('form1').submit()" class="lrg_button" style="float:right">Submit</a>

然后将一个id属性添加到表单元素

<form id="form1" ..>