From: Phil Mcdonnell on
I'm trying to use Watir to log into a page. I can't seem to find the
login button in order to click on it. From the Watir examples I've read
it seems I need the following code:

browser = Watir::Safari.new
browser.goto @login_page
browser.text_field(:name, 'UserID').set(ARGV[0])
browser.text_field(:name, 'Password').set(ARGV[1])
browser.button(:alt, 'Login').click

However, the final line doesn't do anything. Note, the text_field lines
do correctly set the username and password. Any idea how to fix this?

Here's the relavent html:

<FORM NAME="frmLogon"
ACTION="/myca/logon/us/action?request_type=LogLogonHandler&location=us_logon1"
METHOD="POST" onkeypress="formSub(event)">

... lots of stuff ...

<input type='image' src ="/myca/logon/us/shared/images/btn_login.gif"
alt="Login" style="margin-top:5;margin-left:20;margin-bottom:22" border
= "0" tabIndex='5' onClick="javascript:loginNow();return false;">


... lots of stuff ...

</FORM>

Also, the full site is here:
https://online.americanexpress.com/myca/logon/us/action?request_type=LogonHandler&Face=en_US&DestPage=https://www99.americanexpress.com/myca/acctsumm/us/action%3Frequest_type%3Dauthreg_acctAccountSummary%26us_nu%3Dlogincontrol&Info=CUExpired
--
Posted via http://www.ruby-forum.com/.

From: Dimitri Df on
You could try to use :index to find the form you want and submit it that
way.
example: browser.form(:index, 1).submit
Or by using :name of the form
example: browser.form(:name, 'frmLogon').submit

Phil Mcdonnell wrote:
> I'm trying to use Watir to log into a page. I can't seem to find the
> login button in order to click on it. From the Watir examples I've read
> it seems I need the following code:
>
> browser = Watir::Safari.new
> browser.goto @login_page
> browser.text_field(:name, 'UserID').set(ARGV[0])
> browser.text_field(:name, 'Password').set(ARGV[1])
> browser.button(:alt, 'Login').click
>
> However, the final line doesn't do anything. Note, the text_field lines
> do correctly set the username and password. Any idea how to fix this?
>
> Here's the relavent html:
>
> <FORM NAME="frmLogon"
> ACTION="/myca/logon/us/action?request_type=LogLogonHandler&location=us_logon1"
> METHOD="POST" onkeypress="formSub(event)">
>
> ... lots of stuff ...
>
> <input type='image' src ="/myca/logon/us/shared/images/btn_login.gif"
> alt="Login" style="margin-top:5;margin-left:20;margin-bottom:22" border
> = "0" tabIndex='5' onClick="javascript:loginNow();return false;">
>
>
> ... lots of stuff ...
>
> </FORM>
>
> Also, the full site is here:
> https://online.americanexpress.com/myca/logon/us/action?request_type=LogonHandler&Face=en_US&DestPage=https://www99.americanexpress.com/myca/acctsumm/us/action%3Frequest_type%3Dauthreg_acctAccountSummary%26us_nu%3Dlogincontrol&Info=CUExpired
--
Posted via http://www.ruby-forum.com/.

From: Hassan Schroeder on
On Tue, May 25, 2010 at 11:24 PM, Phil Mcdonnell
<phil.a.mcdonnell(a)gmail.com> wrote:
> I'm trying to use Watir to log into a page.  I can't seem to find the
> login button in order to click on it.  From the Watir examples I've read
> it seems I need the following code:

> browser.button(:alt, 'Login').click
>
> However, the final line doesn't do anything.

> Here's the relavent html:

>  <input type='image' src ="/myca/logon/us/shared/images/btn_login.gif"
> alt="Login" style="margin-top:5;margin-left:20;margin-bottom:22" border
> = "0" tabIndex='5' onClick="javascript:loginNow();return false;">

I've never used Watir, but a quick glance at the API has this for the
"button" method --

"Used to access a button element. Usually an <input type = "button"> HTML tag."

Which the form snippet above clearly is not. So I'm not sure why you
expect this to work. :-)

Either you have to find the appropriate method, or select that input
element some other way.

HTH,
--
Hassan Schroeder ------------------------ hassan.schroeder(a)gmail.com
twitter: @hassan