2015-08-14 2 views
2

Я хочу, чтобы мой код VBA заполнил поле даты на конкретном веб-сайте с датой 1990-02-22.Код VBA, не заполняющий дату

Вот исходный код элемента, поле которого мне нужно заполнить:

<input id="mainDriver.dateOfBirth" name="mainDriver.dateOfBirth" class="sg-Input user-success" data-date-split-input="true" max="2015-08-14" placeholder="yyyy-mm-dd" data-date-nopicker="true" type="date" value=""> 

я попытался несколько вариаций следующего кода:

IE.Document.getElementById("mainDriver.dateOfBirth").Value = DateValue(1990 - 02 - 22) 

например Я также попытался это:

IE.Document.getElementById("mainDriver.dateOfBirth").Value = DateValue("February 22, 1990") 

... который, как представляется, способ выразить аргумент DATEVALUE согласно тому, что я искал в Интернете.

В обоих случаях над страницей не влияет - и в коде для отладки отсутствует ошибка.

Любая помощь была бы принята с благодарностью.

Если вы хотите увидеть, где именно находится это поле, вы можете вручную заполнить поля IE до этой точки. Страница IE - here.

И вы могли бы использовать следующий пример для получения информации адреса, когда вы получите эти поля:

Почтовый индекс: COOKS HILL, 2300, NSW

Улица: 33 Bull Street

В противном случае вы могли бы произвольно выбирать/выбирать значения других полей, из выпадающих меню и т. д.

+0

Привет @Bond - спасибо за редактирование. Я удалил свой ответ, хотя, как оказалось, не был ответом. Я думаю, что я должен видеть вещи, потому что выглядел так, как если бы следующий код работал, но когда я снова запускал его, он просто ничего не делал:/'getElementById (« mainDriver.dateOfBirth »). Значение =« 1990-02-10 »' – chris

+0

Ладно, это странно! Я заполнил остальные поля и получил цитату, которая будет создана. Когда я просматриваю детали цитаты на этой последней странице, она показывает 1990-02-10 как DOB. Почему он фактически сохраняет это значение DOB, но не отображает DOB в поле/DOB, когда выполняется соответствующий бит кода? – chris

+0

Спасибо @WanderingFool - полезное редактирование действительно – chris

ответ

3

Я понял это в конце. Это был вопрос о копировании формата даты, указанной в исходном коде, т.е.

max="2015-08-14" placeholder="yyyy-mm-dd" 

... а затем просто используя свойство значения. Таким образом, следующие работали:

IE.document.getElementById("mainDriver.dateOfBirth").Value = "1990-02-10" 

По какой-то причине это фактически не отображать DOB, когда код, но та или иная строчка дата хранится и используется должным образом, тем самым позволяя вам закончить заполнить форму.

В противном случае вы ищете!

+0

Вам нужно вызвать событие onchange, чтобы текст появлялся обновленным, как и раньше, с выпадающими списками. – Bond

+0

Ах круто !!! Я попробую. благодаря – chris

Смежные вопросы