Что нового

Как нажать на кнопку без имени ?

astati

Новичок
Сообщения
145
Репутация
4
Не понимаю как нажать на такую кнопку.
Вот html код кнопки.
Код:
<td colspan='2' style='text-align: right;'>
                                            <div id='dbutton' style='padding-top:3px;'>
                                              <div class='aside' style='margin-top: 0px;padding-left: 3px;'>
                                                <div class='btn-area'>
                                  <a href="" onclick="$('new_user').submit(); return false;"><span style='font-size: 14px;'>
                                    create account
                                  </span>
                                  </a>              </div>
                                              </div>
                                            </div>
                                          </td>
На такой код вообще браузер не реагирует.
Код:
$oSubmit = _IEGetObjById ($oIE, "dbutton")
_IEAction ($oSubmit, "click")
_IELoadWait ($oIE)
 

shakur

Осваивающий
Сообщения
76
Репутация
24
так работает
Код:
;...
$oInputs = _IETagNameGetCollection($oIE, "SPAN")
	For $oInput In $oInputs
	if stringinstr($oInput.innertext,"create") > 0 Then
		_IEAction($oInput,"click")
		_IELoadWait($oIE)
		ExitLoop
	EndIf	
	Next
 

madmasles

Модератор
Глобальный модератор
Сообщения
7,790
Репутация
2,322
astati,
Попробуйте так.
Код:
#include <IE.au3>
;...
$oSpans = _IETagNameGetCollection($oIE, 'span')
For $oSpan In $oSpans
	ConsoleWrite($oSpan.innertext & @LF)
	If StringInStr($oSpan.innertext, 'create account') Then
		_IEAction($oSpan, 'click')
		_IELoadWait($oIE)
		ExitLoop
	EndIf
Next
 
Автор
A

astati

Новичок
Сообщения
145
Репутация
4
Оба варианты хороши. Но у вы не работают. Кнопа не нажимается :(
 
Автор
A

astati

Новичок
Сообщения
145
Репутация
4
КОд страницы превышает максимум поэтому вот
http://dump.ru/file/5466386
 

madmasles

Модератор
Глобальный модератор
Сообщения
7,790
Репутация
2,322
astati,
На Вашей странице на кнопку create account у меня так кликает.
Код:
#include <IE.au3>

;!!!!проверял только на IE8!!!!
$oIE = _IECreate(@ScriptDir & '\4.htm')
MsgBox(64, 'Info', 'Чтобы разрешить "Запуск активного содержимого..."')
$oForm = _IEGetObjById($oIE, 'new_user')
ConsoleWrite($oForm.classname & @LF)

$oSpans = _IETagNameGetCollection($oForm, 'span')
For $oSpan In $oSpans
	ConsoleWrite($oSpan.innertext & @LF)
	If StringInStr($oSpan.innertext, 'create account') Then
		_IEAction($oSpan, 'click')
		_IELoadWait($oIE)
		ExitLoop
	EndIf
Next
 
Автор
A

astati

Новичок
Сообщения
145
Репутация
4
у меня 9 explorer
ругается на 9 строку:
Код:
For $oSpan In $oSpans

Говорит что должен быть тип object

Может мне тебе весь код показать? А то у меня с добавлением верхнего кода перестал считываться checkbox
 
Автор
A

astati

Новичок
Сообщения
145
Репутация
4
Уже ненадо нашел как обойти. Эту проблему. Вопрос закрыт.
 
Верх