Редактор HTML-форм – HTML Form C#
HTML Form Element
HTML Form Element представляет собой раздел, содержащий элементы управления вводом для отправки информации о пользователе. Используя нашу библиотеку, вы можете легко заполнять HTML-формы и отправлять данные прямо из своего приложения C#. Чтобы сделать этот процесс более удобным, мы разработали пространство имен Aspose.Html.Forms. Основным элементом этого пространства имен является FormEditor. Он позволяет найти существующую форму в документе, создать новую с нуля, перебрать элементы, заполнить их данными и обязательно отправить информацию на удаленный сервер.
В этой статье вы узнаете, как работать с объектом FormEditor для управления формой HTML в документе, элементами управления вводом, и отправить информацию. Для тестирования мы используем форму, разработанную сервисом https://httpbin.org.
Как использовать FormEditor
Давайте посмотрим на фрагмент кода C#, который демонстрирует, как использовать пространство имен Aspose.Html.Forms для программного заполнения и отправки HTML-формы. Вам необходимо выполнить следующие шаги:
- Создайте новый экземпляр класса HTMLDocument, используя конструктор HTMLDocument(url). Укажите URL-адрес HTML-формы, которую необходимо заполнить и отправить.
- Используйте метод Create(document, index) для создания экземпляра класса FormEditor, передавая в нем экземпляр HTMLDocument и индекс редактируемой формы (значение 0 относится к первой форме в HTML-документе).
- Заполните данные, используя прямой доступ к элементам ввода. Доступ к полям формы и их изменение осуществляется с помощью объекта
editor
. - Используйте конструктор FormSubmitter(editor) для создания экземпляра класса FormSubmitter.
- Вызовите метод Submit() класса FormSubmitter, чтобы отправить форму.
- Проверьте статус результата отправки формы с помощью свойства
IsSuccess. Если отправка формы прошла успешно, проверяется ответ сервера:
- если ответ в формате JSON, содержимое JSON выводится на консоль;
- в противном случае ответ загружается в другой экземпляр HTMLDocument с использованием метода LoadDocument() для дальнейшей проверки.
1// How to to programmatically fill and submit an HTML form in C#
2
3// Initialize an instance of HTML document
4using (HTMLDocument document = new HTMLDocument(Path.Combine(DataDir, "form.html")))
5{
6 // Create an instance of Form Editor
7 using (FormEditor editor = Aspose.Html.Forms.FormEditor.Create(document, 0))
8 {
9 // You can fill the data up using direct access to the input elements, like this:
10 editor["custname"].Value = "John Doe";
11
12 document.Save("out.html");
13
14 // or this:
15 TextAreaElement comments = editor.GetElement<Aspose.Html.Forms.TextAreaElement>("comments");
16 comments.Value = "MORE CHEESE PLEASE!";
17
18 // or even by performing a bulk operation, like this one:
19 editor.Fill(new Dictionary<string, string>()
20 {
21 {"custemail", "john.doe@gmail.com"},
22 {"custtel", "+1202-555-0290"}
23 });
24
25 // Create an instance of form submitter
26 using (FormSubmitter submitter = new Aspose.Html.Forms.FormSubmitter(editor))
27 {
28 // Submit the form data to the remote server
29 // If you need you can specify user-credentials and timeout for the request, etc.
30 SubmissionResult result = submitter.Submit();
31
32 // Check the status of the result object
33 if (result.IsSuccess)
34 {
35 // Check whether the result is in json format
36 if (result.ResponseMessage.Headers.ContentType.MediaType == "application/json")
37 {
38 // Dump result data to the console
39 Console.WriteLine(result.Content.ReadAsString());
40 }
41 else
42 {
43 // Load the result data as an HTML document
44 using (Document resultDocument = result.LoadDocument())
45 {
46 // Inspect HTML document here.
47 }
48 }
49 }
50 }
51 }
52}
Aspose.HTML предлагает бесплатные Приложения HTML, которые представляют собой онлайн-коллекцию конвертеров, слияний, загрузчиков, инструментов SEO, генераторов кода HTML, инструменты URL и многое другое. Приложения работают в любой операционной системе с веб-браузером и не требуют установки дополнительного программного обеспечения. Легко конвертируйте, объединяйте, кодируйте, генерируйте HTML-код, извлекайте данные из Интернета или анализируйте веб-страницы с точки зрения SEO, где бы вы ни находились. Используйте нашу коллекцию веб-приложений HTML, чтобы выполнять повседневные задачи и сделать свой рабочий процесс безупречным!