Link to home
Start Free TrialLog in
Avatar of Clayton Pruett
Clayton PruettFlag for United States of America

asked on

VBScript to auto click a radio button in internet explorer

This should be a really simple question.  I have a simple script that opens internet explorer and goes to a website.  

The script puts in a username and password automatically and then clicks submit

The problem im having is that before it clicks submit, I have a option to click 1 of 2 radio buttons.  a "In" and a "Out"   The script works great but unfortunetly the website doesnt work unless I click one of the radio buttons BEFORE hitting submit (action)

Heres what I do know.  The Name of the Radio buttons are both "ClockInOut"  One buttons value is "In" one button is "Out"

Heres the current script I'm using


Set IE = CreateObject("InternetExplorer.Application")
IE.Navigate "www.website.com"
IE.Visible = True
Wscript.Sleep 8000
IE.Document.All.Item("LoginID").Value = "loginname"
IE.Document.All.Item("password").Value = "password"
'The line below is the one in question that does not work and where the script error out at. 
IE.Document.All.Item("in").Click
IE.Document.All.Item("Action").Click

Open in new window

Avatar of sirbounty
sirbounty
Flag of United States of America image

IE.Document.All.Item("ClockInOut").Value=True doesn't work?
Avatar of Clayton Pruett

ASKER

No.  The radio buttons are both named ClockInOut.  One has a value on "In" and one has a value of "out" according to the source of the form.


<form name="frm" action="webclock.asp" method="post" autocomplete="off">
<table border="2" width="400" cellspacing="0" cellpadding="0" align="center">
	<tr>
		<td colspan="2" class="noborderalt" align="center">
			<h2>Web Clock</h2>
		</td>
	</tr>
	<tr>
		<td class="noborderalt" align="right" width="30%"><b>Login ID:</b></td>
		<td class="noborderalt" width="70%"><input style="width:80%;" type="text" name="LoginID" value="" /></td>
	</tr>
	<tr>
		<td class="noborderalt" align="right"><b>Password:</b></td>
		<td class="noborderalt"><input style="width:80%;" type="password" name="Password" value="" /></td>
	</tr>
	
	<tr>
		<td colspan="2" class="noborderalt" align="center">
			<b>Clock In</b> <input type="radio" name="ClockInOut" value="in"  />
			<b>Clock Out</b> <input type="radio" name="ClockInOut" value="out"  />
		</td>
	</tr>
	<tr>
		<td colspan="2" class="noborderalt" align="center">
			<br/>
			<input type="submit" value="Submit" name="Action" onclick="document.frm.Action.disabled=true; document.frm.Action.value='Processing'; document.frm.submit();" />
		</td>

Open in new window

Avatar of thiagotietze
thiagotietze

This "automated" solution is for a mass delivery proposal, or you'll use it only in one machine to automate a task only?
If it is the last option, I can tell you to use iMacros, for Internet explorer or Firefox browsers.

You can simply "record" the actions that you need to perform and schedule iMacros to do it for you...

More information about it:
http://www.iopus.com/imacros/

It have a free, and paid versions...
Thanks thiagotietze,

It's only for my personal use, but I'd rather not use a third party program

Ok, cool. Thanks for the reply.

Just though about it because I had this need few time ago and used it to automate a site acessing.
Another clarification is that iMacros acts as an add-on on both Browsers, so it is easier to deal with, as a third party solution.

Cya ;-)
ASKER CERTIFIED SOLUTION
Avatar of Psy053
Psy053
Flag of Australia image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Assistance has been provided, however, poster has chosen not to continue with request.

Recommendation: Delete with NO Refund.