Что нового

disabled кнопка

Rimnox

Новичок
Сообщения
3
Репутация
0
Есть 3 поля и кнопка, при заполнении 3 полей ручным способом кнопка загорается, а если с помощью AutoIT - не работает(нужно выполнить какое то действие: нажать клавишу или табуляцию). Send() не подходит.
Сайт:
http://www.ridus.ru/registration/

Код:
#include <IE.au3>


$sUrl = 'http://www.ridus.ru/registration/'
$sLogin = 'Sdara'
$sPass = '123456'
$sEmail = '[email protected]'

$oIE = _IECreate($sUrl)
$oEmail = _IEGetObjById($oIE, 'email')
$oLogin = _IEGetObjById($oIE, 'username')
$oPass = _IEGetObjById($oIE, 'password')

_IEFormElementSetValue($oEmail, $sEmail)
_IEFormElementSetValue($oLogin, $sLogin)
_IEFormElementSetValue($oPass, $sPass)


$oLinks = _IETagNameGetCollection($oIE, 'span')
For $oLink In $oLinks
    if StringInStr($oLink.innerHtml, 'Зарегистрироваться') > 0 Then
		_IEAction($oLink, 'click')
		_IELoadWait($oIE)
		ExitLoop
	EndIf
Next
 

joiner

Модератор
Локальный модератор
Сообщения
3,556
Репутация
628
ну, если по быстрому, то можно так
Код:
#include <IE.au3>


$sUrl = 'http://www.ridus.ru/registration/'
$sLogin = 'Sdara'
$sPass = '123456'
$sEmail = '[email protected]'

$oIE = _IECreate($sUrl,1,1,1,1)
$oEmail = _IEGetObjById($oIE, 'email')
$oLogin = _IEGetObjById($oIE, 'username')
$oPass = _IEGetObjById($oIE, 'password')

_IEFormElementSetValue($oEmail, $sEmail)
_IEFormElementSetValue($oLogin, $sLogin)
_IEFormElementSetValue($oPass, $sPass)
Send('{TAB 3}')
Send('{ENTER}')

надеюсь, мыло не реальное, а то письмо о регистрации уже ушло :smile:
 
Автор
R

Rimnox

Новичок
Сообщения
3
Репутация
0
Send('{TAB 3}')
Send('{ENTER}')
Конечно можно и так, но без фокуса работать не будет.

Сделал, прям полегчало :whistle:

Код:
#include <IE.au3>


$sUrl = 'http://www.ridus.ru/registration/'
$sLogin = 'Sdara'
$sPass = '123456'
$sEmail = '[email protected]'

$oIE = _IECreate($sUrl,1,1,1,1)
$oEmail = _IEGetObjById($oIE, 'email')
$oLogin = _IEGetObjById($oIE, 'username')
$oPass = _IEGetObjById($oIE, 'password')

_IEFormElementSetValue($oEmail, $sEmail)
_IEFormElementSetValue($oLogin, $sLogin)
_IEFormElementSetValue($oPass, $sPass)

$k = 0
$oLinks = _IETagNameGetCollection($oIE, 'button')
For $oLink In $oLinks
	$k += 1
	if  StringInStr($oLink.outerHTML, "Зарегистрироваться") > 0  And $k = 6 Then
		_IEPropertySet($oLink, "outerHTML", StringReplace($oLink.outerHTML, "disabled=""""", "" ))
		ExitLoop
	EndIf
Next

$k = 0
$oLinks = _IETagNameGetCollection($oIE, 'button')
For $oLink In $oLinks
	$k += 1
	if  StringInStr($oLink.outerHTML, "Зарегистрироваться") > 0  And $k = 6 Then
		_IEAction($oLink, 'click')
		_IELoadWait($oIE)
		ExitLoop
	EndIf
Next
 
Верх