Comment prendre des données de formulaire HTML et écrire en XML en utilisant JQuery?

J'ai une forme qui ressemble à ceci:

<form method="post" id="aodform"> <label for="a">Animal:</label> <input class="input" type="text" name="a"/> <label for="s">Sausage:</label> <input class="input" type="text" name="s"/> <label for="g">Bird:</label> <input class="input" type="text" name="g"/> <label for="d">Dessert:</label> <input class="input" type="text" name="d"/> <input id="submitter" type="submit"/> </form> 

Je dois prendre les valeurs saisies dans la forme et écraser (remplacer) la valeur de texte du nœud correspondant dans un fichier EXISTANT XML qui ressemble à ceci:

 <aod> <animal>x</animal> <sausage>x</sausage> <bird>x</bird> <dessert>x</dessert> </aod> 

Maintenant, je sais que je peux utiliser

 $("#aodform").submit(); 

Pour obtenir un formulaire de soumission dans Jquery, mais après cela, je suis perdu! J'essaie de comprendre comment obtenir ces valeurs de forme, les stocker en tant que variables dans une fonction qui écrit ensuite dans le fichier XML (tout dans Jquery).

J'ai cherché partout dans la boîte à google et j'ai trouvé des sujets similaires, mais pas assez similaire pour aider ma situation. Est-ce que quelqu'un pourrait m'aider? Je vous remercie!

PS Je ne peux PAS utiliser une langue côté serveur, comme PHP, sinon je le ferais.

  • Analyse XML par Javascript ou alternative
  • Existe-t-il un remplacement innerHTML en SVG / XML?
  • Pourquoi, lorsque j'envoie un XML à PHP, les nœuds sont en minuscule, mais lorsque je les analyse en PHP, ils sont majuscules?
  • Analysez XML en utilisant JavaScript
  • Comment accéder à un fichier de propriétés en utilisant "javascript"
  • Analyser les données pour créer un volet de navigation
  • Javascript - XMLHttpRequest, le résultat est toujours indéfini
  • Comment manipuler avec UL avec jQuery dans XML + XSL HTML généré?
  • 3 Solutions collect form web for “Comment prendre des données de formulaire HTML et écrire en XML en utilisant JQuery?”

    Vous ne pourrez pas créer ou modifier un fichier XML local à l'aide de javascript / jquery en raison de problèmes de sécurité. Imaginez-vous aller sur un site Web et le webmaster a écrit un code qui sait quoi et met cela dans un fichier sur votre ordinateur …

    La seule façon d'écrire sur un fichier local à l'aide de javascript consiste à utiliser des cookies ou HTML5 localStorage .

    LocalStorage vous permettra de stocker des clés de chaîne et des valeurs de tableaux et / ou de noms de propriétés et de valeurs d'objets.

    Si vous avez besoin d'un fichier XML, vous devrez appeler un script côté serveur qui a la permission d'écrire le fichier sur le serveur, auquel vous pouvez accéder via son URL.

    JQuery et Javascript sur le côté client ne peuvent pas persister du côté du serveur. Il n'a pas accès à l'écriture sur le code. Vous devrez accéder à une langue côté serveur ou utiliser certains services basés sur le cloud (vous pourriez, par exemple, persister dans Amazon 3S ou un MongoDB ou quelque chose de cette nature, par le biais d'appels API Javascript, sur un service cloud).

    Bien que vous puissiez utiliser Javascript / jQuery pour construire un objet XML dans le client, vous devriez le soumettre à un script côté serveur pour l'enregistrer dans un fichier.

    Désolé d'être le porteur de mauvaises nouvelles, mais vous devrez entrer dans quelque chose d'un peu plus complet, si vous voulez pouvoir le faire.

    Vous devez envoyer des étiquettes dans des entrées cachées, etc.:

     <form method="post" id="aodform"> <label for="a">Animal:</label> <input type="hidden" name="a_label" value="Animal"/> <input class="input" type="text" name="a"/> <label for="s">Sausage:</label> <input type="hidden" name="s_label" value="sausage"/> <input class="input" type="text" name="s"/> <label for="g">Bird:</label> <input type="hidden" name="g_label" value="bird"/> <input class="input" type="text" name="g"/> <label for="d">Dessert:</label> <input type="hidden" name="d_label" value="dessert"/> <input class="input" type="text" name="d"/> <input id="submitter" type="submit"/> </form> 

    Puis, en PHP, vous accédez à des paires:

     $name = "a"; // "s", "g", "d" $tag = $_POST[$name.'_label']; $value = $_POST[$name]; $xml_element = "<$tag>$value</$tag>"; 

    OU

    Utilisez le même nom que l'étiquette, puis utilisez:

     foreach($_POST as $key => $value) { $xml_element = "<$key>$value</$key>"; ... } 
    JavaScript rend le site Web intelligent, beauté et facile à utiliser.