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 :

  1. 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.
  2. 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és Value (obtenez ou définissez leurs valeurs).
  3. Créez une instance de la classe HTMLSaveOptions et attribuez la valeur true à la propriété SerializeInputValue.
  4. Appelez la méthode Save(path, saveOptions) de la classe HTMLDocument et passez le chemin du fichier où vous voulez sauvegarder le document et l’instance HTMLSaveOptions 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 :

  1. Préparer le code HTML.
  2. Dans l’exemple, nous créons un document HTML à partir d’une chaîne de caractères en utilisant le constructeur HTMLDocument (content, baseUri).
  3. Utilisez la méthode GetElementsByTagName() de la classe Document pour sélectionner tous les éléments input du document et les stocker dans la variable inputElements.
  4. 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.
  5. Enregistrez le document HTML dans un fichier en utilisant la méthode Save(path, saveOptions). Attribuez la valeur true à la propriété SerializeInputValue de l’objet HTMLSaveOptions passé en paramètre de la méthode Save().

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 !

Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.