Comment sérialiser une valeur d'entrée – Exemple C#
Il est parfois nécessaire d’enregistrer un document HTML dont les champs de saisie sont remplis. Bien que les navigateurs ne le permettent pas pour des raisons de sécurité, Aspose.HTML fournit une propriété
SerializeInputValue de la classe
HTMLSaveOptions qui vous donne cette possibilité. Si le document HTML comporte des champs de saisie remplis, en utilisant la propriété SerializeInputValue
, vous pouvez enregistrer le document résultant tel qu’il apparaît dans le navigateur.
Cet article décrit comment sérialiser les valeurs d’entrée dans les formulaires HTML ou les champs de saisie à l’aide de la bibliothèque Aspose.HTML for .NET.
Etapes de la sérialisation des valeurs d’entrée
Certains documents HTML contiennent des éléments de formulaire tels que
HTMLInputElement,
HTMLTextAreaElement, etc. Pour des raisons de sécurité, leurs valeurs ne sont pas sauvegardées, mais vous pouvez changer la situation en utilisant l’option SerializeInputValue
de la classe HTMLSaveOptions
. Vous devez suivre les étapes suivantes :
- Chargez un document HTML à l’aide de la classe HTMLDocument. Vous pouvez charger un document HTML à partir d’un fichier, d’un code HTML, d’un flux ou d’une URL.
- Utilisez l’une des méthodes
GetElement*
de la classe Document pour obtenir un ou plusieurs éléments HTML dans le document et utilisez les propriétésValue
(obtenez ou définissez leurs valeurs). - Créez une instance de la classe
HTMLSaveOptions et attribuez la valeur
true
à la propriétéSerializeInputValue
. - Appelez la méthode
Save(
path
,saveOptions
) de la classeHTMLDocument
et passez le chemin du fichier où vous voulez sauvegarder le document et l’instanceHTMLSaveOptions
comme paramètres.
Comment sérialiser une valeur d’entrée dans un formulaire HTML
Voyons comment appliquer la propriété SerializeInputValue
en utilisant un exemple d’un
HTMLInputElement qui représente un élément de saisie HTML tel qu’une zone de texte. Suivez les instructions pas à pas pour sérialiser la valeur d’entrée dans un formulaire HTML simple que nous créons à partir de zéro :
- Préparer le code HTML.
- Dans l’exemple, nous créons un document HTML à partir d’une chaîne de caractères en utilisant le constructeur
HTMLDocument (
content
,baseUri
). - Utilisez la méthode
GetElementsByTagName() de la classe Document pour sélectionner tous les éléments
input
du document et les stocker dans la variableinputElements
. - Prenez le premier et unique élément
<input>
, dans ce cas, de la collection résultante et définissez la propriété Value de la classe HTMLInputElement. - Enregistrez le document HTML dans un fichier en utilisant la méthode
Save(
path
,saveOptions
). Attribuez la valeurtrue
à la propriété SerializeInputValue de l’objetHTMLSaveOptions
passé en paramètre de la méthodeSave()
.
Voici un exemple de sérialisation des valeurs saisies dans un champ de saisie à l’aide de la bibliothèque Aspose.HTML C# :
1// Set input value and serialize HTML form element using C#
2
3string html = @"
4<html>
5 <body>
6 <div>The new input element value: <input type = ""text"" value=""No"" /></div>
7 </body>
8</html>";
9
10// Create an HTML document from string of code containing an HTMLInputElement
11using HTMLDocument doc = new HTMLDocument(html, string.Empty);
12
13// Get all elements with the <input> tag
14HTMLCollection inputElements = doc.GetElementsByTagName("input");
15
16// Take the first and only element, in this case, from the resulting collection
17HTMLInputElement input = (HTMLInputElement)inputElements[0];
18
19// Set the desired value for this HTML form element
20input.Value = "Text";
21
22// Prepare a path to save HTML
23string savePath = Path.Combine(OutputDir, "result.html");
24
25// Save the HTML document with SerializeInputValue set to true
26doc.Save(savePath, new HTMLSaveOptions { SerializeInputValue = true });
Ainsi, la propriété
SerializeInputValue de la classe HTMLSaveOptions
détermine si les valeurs des éléments d’entrée d’un document HTML sont sérialisées et incluses dans le fichier sauvegardé ou non. Si SerializeInputValue
est true
, les valeurs des éléments d’entrée seront incluses dans le fichier sauvegardé. Si SerializeInputValue
n’est pas défini, les valeurs des éléments d’entrée ne seront pas incluses dans le fichier sauvegardé.
Vous pouvez télécharger des fichiers de données et des exemples C# complets qui démontrent comment définir le dossier des polices à partir de GitHub.
Aspose.HTML propose des applications Web HTML gratuites, une collection en ligne de convertisseurs, de fusionneurs, d’outils SEO, de générateurs de code HTML, d’outils URL, de formateurs, de minificateurs, et bien plus encore. Les applications fonctionnent sur n’importe quel système d’exploitation doté d’un navigateur web et ne nécessitent aucune installation de logiciel supplémentaire. C’est un moyen rapide et facile de résoudre efficacement vos tâches liées au HTML !