Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > JavaScript > Bibliothèques & Frameworks > jQuery
jQuery Forum d'entraide sur le framework jQuery. Avant de poster : Tutoriels jQuery, FAQ jQuery, Tous les tutoriels JavaScript, Toutes les FAQ JavaScript
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 31/03/2011, 09h46   #1
Candidat au titre de Membre du Club
 
franco
Inscription : mars 2011
Messages : 199
Détails du profil
Informations personnelles :
Nom : franco

Informations forums :
Inscription : mars 2011
Messages : 199
Points : 11
Points : 11
Par défaut modifier une valeur en javascript

salut,

mon but est de modifier une valeur dans un fichier test.xml

étand donner le fichier test.xml
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?xml version="1.0" encoding="UTF-8"?>
<societes>
   <societe>
      <nom>HP</nom>
      <nombre>10</nombre>
 
   </societe>
 <societe>
      <nom>IBM</nom>
      <nombre>40</nombre>
 
 
   </societe>
 <societe>
      <nom>Tochiba</nom>
      <nombre>25</nombre>
 
 
 
   </societe>
 
</societes>
on a une liste déroulante qui contient les nom des societs

le code de cette liste
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<script type="text/javascript">var h1,y1;
			$(document).ready(function() {
			$.post('test.xml', function(data) {
			$(data).find("societes").children("societe").each(function(i, item){
 
			h1=$(item).children("nom").text()+'';
 
 
 
 
           $('#list').append('<option value="+h1+" >+h1+</option>');
	 });
 
 
			 });
			});
 
		</script>


le but est quand je choisir dans cette liste par exemple " HP "

un champs texte dois afficher avec un bouton de validation

dans ce champs texte j'écris par exemple 50

et quand je clique dans le bouton le nombre de la societes HP dois être modifiés

(l'ancien valeur est 10 et la nouvelle valeur est 50)


donc le code dois être comme suit
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
$(document).ready(function(){
 
$('#list').change(function(){
 
 
var valeur=$(this).val();
 
$(data).find("societes").children("societe").each(function(i, item){
 
			h1=$(item).children("nom").text()+'';
 
			if (h1 == valeur){
 
//normalement ici je dois afficher le champ texte et le bouton de validation
 
//et avec l'action .click() dans le bonton
 
//je dois modifier le nombre de societe sélectionné par la valeur saisie dans le //champs texte 
 
 }
 
 
 
	 });
 
});
});
</script>


je pense que la plus important est comment ouvrir le fichier test.xml et modifier une valeur dans ce fichier


merci d'avance
alen22 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/03/2011, 13h34   #2
Candidat au titre de Membre du Club
 
franco
Inscription : mars 2011
Messages : 199
Détails du profil
Informations personnelles :
Nom : franco

Informations forums :
Inscription : mars 2011
Messages : 199
Points : 11
Points : 11
A mon avis je pense qu'il faut plutôt récupérer tout le fichier. XML (variable), le parcourir, changer la valeur souhaitée, recréer le nouveau XML.

mais si on divise le problème en des sous problèmes

c a dire avant de la modification dans la fichier test.xml

j'ai ce problème qui est comment afficher un champs texte et un bouton suite à une sélection dans la liste déroulante

comme j'ai deja dis :
exemple de scenario de test :
quand je choisir dans cette liste par exemple " HP "

un champs texte dois afficher avec un bouton de validation
alen22 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/03/2011, 17h57   #3
Candidat au titre de Membre du Club
 
franco
Inscription : mars 2011
Messages : 199
Détails du profil
Informations personnelles :
Nom : franco

Informations forums :
Inscription : mars 2011
Messages : 199
Points : 11
Points : 11
après recherche je trouve des notions que je pense je dois les utiliser dans mon code :pour masquer ou afficher le champs texte je dois uitilser ".show()" et .hide()

pour le code en html
Code :
1
2
3
4
<div id="nombre-info">
  <label for="nombremodifier">nouvelle valeur</label>
  <input id="nombremodifier" name="nombremodifier" type="text"/>
</div>
pour le code javascriptje (qui permet d'afficher le champ texte après la sélection de nom de la societe )
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
 
$(document).ready(function(){
 
$('#list').change(function(){
 
 
var valeur=$(this).val();
 
$(data).find("societes").children("societe").each(function(i, item){
 
			h1=$(item).children("nom").text()+'';
 
			if (h1 == valeur){
 
 $("#nombre-info").show()   //ici normalement affichage de champs texte
 
//reste à afficher le bouton de validation pour valider la modification de nombre de la societe sélectionne 
 
 
 }
 
 
 
	 });
 
});
});
</script>

merci de m'aidez à compléter ce code
alen22 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/04/2011, 00h58   #4
Candidat au titre de Membre du Club
 
franco
Inscription : mars 2011
Messages : 199
Détails du profil
Informations personnelles :
Nom : franco

Informations forums :
Inscription : mars 2011
Messages : 199
Points : 11
Points : 11
j'espère que quelqu'un pouvez m'aidez a résoudre mon problème

est ce que possible avec jquery est de parser un fichier .xml dans le but de modifier le donnes et non pour juste la consulter (la modification grâce au donne saisie dans un champ texte)

dans le code que j'ai déjà vous donnez montre comment parser fichier .xml pour la consultation
alen22 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/04/2011, 15h22   #5
Candidat au titre de Membre du Club
 
franco
Inscription : mars 2011
Messages : 199
Détails du profil
Informations personnelles :
Nom : franco

Informations forums :
Inscription : mars 2011
Messages : 199
Points : 11
Points : 11
j'arrive à afficher le champs texte et le bouton avec jquery

mais le problème à ce moment est ce que possible de modifier des données dans un fichier .xml
en utilisant jquery

car je travail avec jquery et j'arrive à parcourir un fichier .xml mais juste pour la consultation de donnée
Code :
1
2
3
4
5
$(document).ready(function() {
			$.post('test.xml', function(data) {
			$(data).find("societes").children("societe").each(function(i, item){
.......
........
merci d'avance
alen22 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/04/2011, 18h03   #6
Candidat au titre de Membre du Club
 
franco
Inscription : mars 2011
Messages : 199
Détails du profil
Informations personnelles :
Nom : franco

Informations forums :
Inscription : mars 2011
Messages : 199
Points : 11
Points : 11
SVP je veux juste savoir est ce qu'avec jquery je peux ouvrir un fichier .xml

pour modifier des données dans ce fichier



merci d'avance
alen22 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/04/2011, 18h17   #7
Rédacteur/Modérateur
 
Avatar de SpaceFrog
 
Homme
Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Inscription : mars 2002
Messages : 30 007
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Royaume-Uni

Informations professionnelles :
Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Secteur : Industrie

Informations forums :
Inscription : mars 2002
Messages : 30 007
Points : 45 091
Points : 45 091
Non

Afficher le fichier, oui
Modifier les données affichées, oui

Sauvegarder les modifications non
Tu devras passer les données coté serveur
__________________
Ma page Developpez
Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
Votre post est résolu ? Alors n'oubliez pas le Tag


réalisations :www.planet-languages.com|www.saftair.com| www.ouestisol.fr | www.sebemex.fr | www.extramiante.fr | www.sistac-alizay.fr | www.acoustishop.fr | www.litt.fr | www.ouestventil.fr
SpaceFrog est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/04/2011, 18h34   #8
Candidat au titre de Membre du Club
 
franco
Inscription : mars 2011
Messages : 199
Détails du profil
Informations personnelles :
Nom : franco

Informations forums :
Inscription : mars 2011
Messages : 199
Points : 11
Points : 11
j'ai une idée qui est récupérer tout mon XML (variable) le parcourir, changer la valeur souhaitée, recréer le nouveau XML.

mais est ce que c'est possible avec jquery
alen22 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/04/2011, 18h40   #9
Rédacteur/Modérateur
 
Avatar de SpaceFrog
 
Homme
Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Inscription : mars 2002
Messages : 30 007
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Royaume-Uni

Informations professionnelles :
Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Secteur : Industrie

Informations forums :
Inscription : mars 2002
Messages : 30 007
Points : 45 091
Points : 45 091
avec jquery tu peux recupérer le xml au moyen d'un ajax
tu peux le parser le modifier, jquery est très bien doté pour ça

Pour le sauvegarder tu devras renvoyer l'intégralité du string de ton xml coté serveur
__________________
Ma page Developpez
Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
Votre post est résolu ? Alors n'oubliez pas le Tag


réalisations :www.planet-languages.com|www.saftair.com| www.ouestisol.fr | www.sebemex.fr | www.extramiante.fr | www.sistac-alizay.fr | www.acoustishop.fr | www.litt.fr | www.ouestventil.fr
SpaceFrog est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/04/2011, 23h35   #10
Candidat au titre de Membre du Club
 
franco
Inscription : mars 2011
Messages : 199
Détails du profil
Informations personnelles :
Nom : franco

Informations forums :
Inscription : mars 2011
Messages : 199
Points : 11
Points : 11
merci pour la réponse,
donc il y'a solution pour modifier des données dans un fichier .xml avec jquery

je travail dans un projet JEE et le fichier test.xml que je l'utilise pour la consultation et aussi pour cet objectif souhaité qui est la modification des donnes dans ce fichier je le met sous le dossier "WebContent" de mon projet JEE

je travail avec jboss comme serveur d'application

comme j'ai déjà dis mon idée pour modifier et valider la modification au niveau des donnees dans le fichier test.xml est récupérer tout mon XML (variable) le parcourir, changer la valeur souhaitée, recréer le nouveau XML.

la modification est au niveau des données à titre d"exemple soit le fichier test.xml

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?xml version="1.0" encoding="UTF-8"?>
<societes>
   <societe>
      <nom>HP</nom>
      <nombre>10</nombre>
 
   </societe>
 <societe>
      <nom>IBM</nom>
      <nombre>40</nombre>
 
   </societe>
 
 
 
</societes>
par exemple modifier le nombre de HP rendre 50 au lieu de 10

mais franchement je n'arrive pas à comprendre votre réponse
"Pour le sauvegarder tu devras renvoyer l'intégralité du string de ton xml coté serveur "

j'espère que vous pouvez m'aidez par un exemple qui permet de modifier des données au niveau de fichier .xml grâce au jquery
vous dite que jquery est très bien doté pour parser et modifier des données dans un fichier .xml

merci d'avance
alen22 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/04/2011, 11h39   #11
Rédacteur/Modérateur
 
Avatar de SpaceFrog
 
Homme
Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Inscription : mars 2002
Messages : 30 007
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Royaume-Uni

Informations professionnelles :
Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Secteur : Industrie

Informations forums :
Inscription : mars 2002
Messages : 30 007
Points : 45 091
Points : 45 091
Citation:
mais franchement je n'arrive pas à comprendre votre réponse
"Pour le sauvegarder tu devras renvoyer l'intégralité du string de ton xml coté serveur "
C'est pourtant exprimé en français simple ...


Javascript est un langage client interprété par le navigateur.
Tu peux manipuler les balises xml et leur contenu avec javascipt. Mais javascript ne peux pas et ne doit en aucun cas pour des raisons évidentes de sécurité pouvoir enregistrer un fichier sur le disque local à partie d'une application web.
Certains navigateur le permettent au moyen d'activeX avec en général une demande de confirmation du client.
Si tu veux enregistrer ton fichier xml tu devras le faire coté serveur ...
__________________
Ma page Developpez
Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
Votre post est résolu ? Alors n'oubliez pas le Tag


réalisations :www.planet-languages.com|www.saftair.com| www.ouestisol.fr | www.sebemex.fr | www.extramiante.fr | www.sistac-alizay.fr | www.acoustishop.fr | www.litt.fr | www.ouestventil.fr
SpaceFrog est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/04/2011, 13h09   #12
Candidat au titre de Membre du Club
 
franco
Inscription : mars 2011
Messages : 199
Détails du profil
Informations personnelles :
Nom : franco

Informations forums :
Inscription : mars 2011
Messages : 199
Points : 11
Points : 11
encore merci pour la réponse,ca devient claire, mais si on reste dans le même but(modifier des données au niveau de fichier .xml).

comme je dis je travail avec un projet JEE, et la page qui contient le code javascript est d'extension jsp

à titre d'exemple de fichier .xml
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?xml version="1.0" encoding="UTF-8"?>
<societes>
   <societe>
      <nom>HP</nom>
      <nombre>10</nombre>
 
   </societe>
 <societe>
      <nom>IBM</nom>
      <nombre>40</nombre>
 
   </societe>
 
 
 
</societes>
avec jquery je peux récupérer le nombre de la societe Hp (qui 10)

et avec un bouton dans le formulaire je peux récupérer cette valeur :10 et bien sur j'ai une autre valeur saisie dans un champs text par exemple 50

donc j'ai deux valeur 10 et 50 et aussi je dois récupérer le nom de la societe qui est HP ce bouton dois envoyer ces trois valeur (10,50,HP) vers une servlet dans la servlet (c'est une class java) je dois parser le fichier .xml pour modifier le nombre de la societe HP et la rendre 50


avec la servlet je peut modifier des données au niveau de fichier .xml


je pense avec ce type de solution je pense que le problème est résolu

merci de me donner votre avis pour cette solution
alen22 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/04/2011, 22h31   #13
Candidat au titre de Membre du Club
 
franco
Inscription : mars 2011
Messages : 199
Détails du profil
Informations personnelles :
Nom : franco

Informations forums :
Inscription : mars 2011
Messages : 199
Points : 11
Points : 11
je veux juste savoir est ce que c'est faisable de travailler avec ce type de solution (dont le but de modifier des données au niveau de fichier .xml)
(j'utilise jquery juste pour recuperer des valeur : HP et 10)
et bien sur c'est faisable avec jquery et après envoyer ces deux valeurs

au servlet pour modifier le nombre qui correspond au nom de la societe Hp

(avec servlet je pense c'est faisable de modifier des données au niveau de fichier .xml)

merci d'avance
alen22 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/04/2011, 02h27   #14
Membre expérimenté
 
Avatar de nadox
 
Homme
Développeur
Inscription : février 2010
Messages : 360
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Calvados (Basse Normandie)

Informations professionnelles :
Activité : Développeur
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : février 2010
Messages : 360
Points : 545
Points : 545
Oui c'est possible. C'est même une des utilisations habituelles de l'Ajax (avec jQuery par exemple).

Page HTML avec AJAX(jQuery) <== SERVLET qui renvoit le XML
modif du xml en javascript
Page HTML avec AJAX(jQuery) ==> SERVLET qui enregistre le XML
nadox est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 03h44.


 
 
 
 
Partenaires

Hébergement Web