Что нового

Как определить, выбран ли элемент формы CheckBox

eropov

Jury
Сообщения
195
Репутация
25
Здравствуйте. Есть сайт(https://target.mail.ru/ads/create/) c формой для заполнения. Там нет нужного тега form, по этому я нажимаю на элемент CheckBox так:
Код:
#include <IE.au3>

_IEElementGetObjByClassClick($oIE, 'age', 1)

Func _IEElementGetObjByClassClick($oIE, $sName, $sNum = 0);Выбор элемента по имени
	$Input = _IEGetObjByName($oIE, $sName, $sNum)
	_IEAction($Input, "click")
EndFunc   ;==>_IEElementGetObjByClassClick
Но проблема в том, что код работает следующим образом, при каждом вызове функции я просто нажимаю на элемент, при этом элемент включается - выключается.
Как сделать проверку, если элемент включен, его не надо снова включать т.к. он отключится, и на оборот.
 

Garrett

Модератор
Локальный модератор
Сообщения
3,999
Репутация
967
Re: Как определить, выбран ли элемент формы

eropov [?]
Там нет нужного тега form
А это что, по-вашему?
Код:
<form id="offer-accept" action="/offer" method="POST">
  <div class="t-payments">
    <h1 class="t-payments__title">Буду платить</h1>
    <div class="t-payments__type"><input type="radio" name="account_type" value="legal" id="offer_legal"><label for="offer_legal">Через банк как юридическое лицо или ИП</label></div>
    <div class="t-payments__type"><input type="radio" name="account_type" value="card" id="offer_card"><label for="offer_card">Электронными деньгами или кредитной картой</label></div>
    <div class="t-payments__type"><input type="radio" name="account_type" value="developer" id="offer_developer"><label for="offer_developer">Со счета разработчика приложений для Одноклассников или Моего Мира</label></div>
    <div class="t-payments__type"><input type="radio" name="account_type" value="later" checked="" id="offer_later"><label for="offer_later">Выберу позже</label></div>
  </div>
  <input type="checkbox" name="accept" value="1" id="accept" checked=""><label for="accept">
    Я принимаю условия соглашения, я согласен с <a id="doc_rules" href="/doc/pravila/">Правилами</a>
	<a href="/partner/doc/partner_rules_dev/" class="subpartner_rules-link">Правилами</a> оказания услуг
  </label>
  <input type="submit" value="Продолжить" id="continue">
</form>
Как сделать проверку
Код:
$oForm = _IEGetObjById ($oIE, "offer-accept")
$oText = _IEFormElementGetObjByName ($oForm, "accept")
If _IEFormElementGetValue ($oText) Then
	MsgBox(0, @ScriptName, "Галочка стоит!")
EndIf
 
Автор
E

eropov

Jury
Сообщения
195
Репутация
25
Re: Как определить, выбран ли элемент формы

А это что, по-вашему?
Вы где такое нашли? :laugh:
У меня такого html вообще нет :shok:


Добавлено:
Сообщение автоматически объединено:

Решил проблему так:
Код:
_CheckBox_Pokazat($oIE, 'everyDay', 1);Показывать

Func _CheckBox_Pokazat($oIE, $sId, $iVKL);Выбор элемента по id для чекбокса Показывать
	$Input = _IEGetObjById($oIE, $sId)
	If $iVKL = 1 And $Input.checked == True Then ;Галочка стоит значит выключен
			_IEAction($Input, "click")
	ElseIf $iVKL = 0 And $Input.checked == False Then ;Галочка не стоит значит включен
			_IEAction($Input, "click")
	EndIf
EndFunc
 
Верх