Программное заполнение полей html формы

Сегодня хочу показать на просто примере, как заполнить поля html формы с помощью приложения написанного на языке c#

Подготовка

Создадим новый проект типа Windows Forms Application.

Добавим на форму: два текстовых поля (txtName и txtLastName), кнопку и control WebBrowser (wb).

Windows Form

Для работы нам понадобиться тестовая HTML страница, например такого вида:

html форма

Работа с полями HTML формы

1. Для начала нужно загрузить страницу в WebBrowser.

2. Затем нужно дождаться полной загрузки страницы. Для этого подписываемся на событие DocumentCompleted.

Поле ввода, расположенное на странице, представляет собой HTML элемент, состоящий из одиночного тега input. Тип поля, а также некоторые другие параметры элемента, задаются с помощью атрибутов. Например: HTML атрибут value — хранит значение поля, name — содержит имя элемента и так далее.

Как получить значение поля input?

1. Находим на странице html элемент, который содержит тег input.

2. С помощью метода GetAttribute получаем значение атрибута value.

результат

форма с полями

Как заполнить поле input?

Если же вам нужно заполнить поле input HTML формы, то тогда вместо метода GetAttribute воспользуйтесь методом SetAttribute, например:

результат

заполненные поля

Динамическое заполнение полей

В предыдущем примере заполнение полей HTML формы производилось с помощью заранее заданных значений, но так же заполнить поля можно и динамически.

Например, я хочу, чтобы при вводе данных в текстовое поле (textBox) автоматически изменялось значение соответствующего поля на странице.

1. Создадим переменную inputs типа HtmlElementCollection.

2. Загружаем html страницу в элемент управления WebBrowser.

3. Получаем коллекцию всех полей формы.

4. Подписываемся на событие TextChanged, элемента управления textBox, и в обработчике данного события изменяем содержимое поля.

результат

динамические поля

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

Читайте также:

Похожие темы

WebBrowser основные свойства для работы с контенто... WebBrowser работа с контентом И так, html страница была полностью загружена в control webBrowser, и теперь можно переходить к обработке полученных да...
Как получить имя html элемента при наведении мышки... Получение имени html элемента при наведении мышки Сегодня я хочу показать на простом примере, как получить имя html элемента при наведении мышкой в о...
Web Application Pentesting | методы HTTP запросов... Добро пожаловать на курс Web Application Pentesting. В этой статье мы с вами научимся: Вручную посылать запросы на веб сервер через консольную утил...
HTTP Digest Аутентитфикация | Web Application Pent... Привет колеги. Добро пожаловать на курс Web Application Pentesting. В этой статье мы с вами поговорим о: Дайджест(Цифровой) Аутентификации. Попыт...
HTTP Cookies | Web Application Pentesting Добро пожаловать на курс Web Application Pentesting колеги. Сегодня мы поговорим с Вами о куки(Cookie). Сразу же хочу предупредить , что у Виве...