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