begin process at 2012 05 29 05:08:46
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Javascript / DHTML / Ajax

 > 

CSS

 > 

Général

 > 

[DOM] getAttribute('value') renvoie une chaine vide


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

[DOM] getAttribute('value') renvoie une chaine vide

mardi 20 mai 2008 à 13:58:46 | [DOM] getAttribute('value') renvoie une chaine vide

Cr30s

Bonjour à tous,

J'ai une boucle qui me permet de créer des lignes de tableaux grâce au DOM . Dans chaque cellule se trouve un input identifié par un id unique et généré de la manière suivante : 'ref_'+compteur de ma boucle, 'description_'+compteur, etc ...

Le problème est que lorsque je récupère la valeur des ces champs avec la méthode getAttribute('value'), j'obtiens la valeur pour tous les champs instanciés lors de ma boucle mais pas celles dont les inputs sont en "édition libre".
Concrètement, j'ai 3 champs ref,description et prix qui fonctionnent parfaitement, mais le dernier : serial, est renseigné par l'utilisateur . Et lorsque j'utilise getAttribute('value'), j'obtiens les valeurs de ref,description et prix mais pas celle de serial .

Code utilisé pour générer l'input serial :
[code]
for(var i = 0; i < 6; i++) {
if ( i != 4){
                var inp = document.createElement("input");
                inp.setAttribute("readonly","readonly");
                inp.setAttribute("type","text");
                }

if (i == 3){inp.setAttribute("id","serial_"+fieldcount_materiel);
                inp.removeAttribute("readonly");
                inp.setAttribute("value","");
                cell.appendChild(inp);
                }
}
[/code]

Code utilisé pour récupérer la valeur de serial :
[code]
var elemdiv = document.getElementById('materiel');
var children = elemdiv.childNodes;

for(var i = 1;i< children.length;i++){
tmp2 += children[i].childNodes[0].childNodes[0].childNodes[3].childNodes[0].getAttribute('value')+' |||| ';
}
[/code]

J'aimerais donc savoir si getAttribute ne récupère que les valeurs crées via le DOM apr la méthode setAttribute() ou si on peut l'utiliser pour récupérer la valeur comme le ferais un getElementById('serial').value ( chose que je ne peux faire dûe à la composition de mon tableau qui mélange plusieurs types d'id et qui ne sont pas forcément toutes présentes) .

Merci pour votre aide .
mardi 20 mai 2008 à 14:55:09 | Re : [DOM] getAttribute('value') renvoie une chaine vide

maelob

Membre Club
Bonjour,
d'après selfHTML getAttribute récupere des info concernant le style sinon chaine vide
http://actuel.fr.selfhtml.org/archives/docu/7.0/tecbbaa.htm#a3
Apparement ça ne serait pas ce que tu veux...




Maelo ou Elo --> Mon blog

Si quelqu'un vous dit : "Je me tue à vous le répéter", laissez-le mourir. (Jacques Prévert)
mardi 20 mai 2008 à 15:02:43 | Re : [DOM] getAttribute('value') renvoie une chaine vide

Zobibol

Membre Club
bonjour, juste une petite question :
pourquoi ne pas stocker "serial_"+fieldcount_materiel dans une variable (voir un array )?
et ensuite
faire un document.getElementById(_idMaterial)
parce que cette écriture:
children[i].childNodes[0].childNodes[0].childNodes[3].childNodes[0].getAttribute('value')+
est complètement invivable !
[o-_-o]
mardi 20 mai 2008 à 15:21:42 | Re : [DOM] getAttribute('value') renvoie une chaine vide

Cr30s

Tout d'abord merci maelob & Zobibol, j'ai lu l'article de selfHTML qui effectivement restreint l'utilisation aux seuls attributs de styles . Mais j'avais déjà regardé la spécification de getAttribute sur le site de MDC (http://developer.mozilla.org/fr/docs/DOM:element.getAttribute) où cette information n'est pas précisée . Ce qui m'étonne c'est que ça fonctionne quand même avec les autres valeurs des autres inputs .

En ce qui concerne l'utilisation d'un array, j'y avais pensé mais j'avoue ne pas me souvenir pourquoi je ne l'ai pas utilisée .
Dans mon tableau il est possible en cliquant sur un lien de faire un retour d'une pièce en SAV ce qui correspond en fait à l'insertion d'une nouvelle ligne dans mon tableau et pour laquelle l'id est sous la forme ref_sav_+compteur . Et donc il me semble que je n'utilise pas d'array car je dois conserver la position "physique" de la ligne insérée .

Par exemple :
ref_0
ref_1
ref_sav_0
ref_2
ref_sav_1

Et ça je ne peux pas en mettant dans des tableaux séparés ces identifiants retrouvé ensuite quelle pièce revenue en SAV est rattachée à la pièce d'origine .

Je vais quand même essayé de passer par un (plusieurs) array(s) mais cette histoire de getAttribute me chiffone quand même .

mardi 20 mai 2008 à 15:25:56 | Re : [DOM] getAttribute('value') renvoie une chaine vide

Zobibol

Membre Club
pour savoir, c'est une table qui à 4 colonnes (TD)  ref,description et prix  et serial (et qui peux avoir n lignes (tr) ?
parceque si tel est le cas, tu pourrais parcourir les colonnes de ta table
la, plus besoin de savoir si c'est un retour ou pas !


[o-_-o]
mardi 20 mai 2008 à 15:36:35 | Re : [DOM] getAttribute('value') renvoie une chaine vide

Cr30s

Effectivement c'est ça . Mais là tout de suite je ne vois pas ce que tu veux dire . Enfin je ne vois pas commetn le fait de parcourir par colonne et non par ligne peut m'aider ?!?
mardi 20 mai 2008 à 15:38:49 | Re : [DOM] getAttribute('value') renvoie une chaine vide

Zobibol

Membre Club
mon dieux, (oui bon, je me l'accorde celle la) ce que je suis idiot, je voulais dire ligne !
te serait-il possible de fournir le html obtenu (juste la table histoire de voir comme faire )


[o-_-o]
mardi 20 mai 2008 à 15:41:29 | Re : [DOM] getAttribute('value') renvoie une chaine vide

Cr30s

Désolé je ne trouve pas comment éditer mon message précédent . J'ai oublié que je pouvais supprimer les lignes peut importe leur emplacement . C'est pour ça que je n'utilise pas de array parcequ'après je suis obligé de parcourir chaque array pour supprimer la référence correspondantes à la ligne supprimée . Sinon le getElementById me renverrait une erreur JS .

Du coup j'utilise un removeChild, ce qui est plus simple .
mardi 20 mai 2008 à 15:44:52 | Re : [DOM] getAttribute('value') renvoie une chaine vide

Cr30s

Ca donne ça :
<table>
    <tbody id="0">
        <tr>
            <td>
                <input style="text-align: center; width: 80px;" value="ME_C1GPC32" id="ref_0" readonly="readonly" type="text">
            </td>
            <td>
                <input style="width: 350px;" value="CORSAIR Value Select 1 Go DDR PC3200 (400 Mhz) CL3 [VS1GB400C3]" id="description_0" readonly="readonly" type="text">
            </td>
            <td>
                <input style="text-align: center; width: 80px;" value="XX.XX" id="prix_0" readonly="readonly" type="text">
            </td>
            <td>
                <input value="" id="serial_0" type="text">
            </td>
            <td>
                <img style="margin-left: 1px; margin-right: 1px;" src="./IMAGES/NEW_STYLE/toolSav.png" onclick="popUp(0);">
            </td>
            <td>
                <a class="supprimer" id="sup_0" href="javascript:suppress_materiel(0);">Supprimer</a>
            </td>
        </tr>
    </tbody>
</table>
mardi 20 mai 2008 à 15:47:03 | Re : [DOM] getAttribute('value') renvoie une chaine vide

maelob

Membre Club
En même temps que tu supprimes ta ligne tu peux supprimer l'entrée dans l'array.




Maelo ou Elo --> Mon blog

Si quelqu'un vous dit : "Je me tue à vous le répéter", laissez-le mourir. (Jacques Prévert)

1 2

Cette discussion est classée dans : code, value, getattribute, serial, inp


Répondre à ce message

Sujets en rapport avec ce message

Fonction avec parametres [ par lotr ] Bonjour,Voila mon pb : j'utilise une fonction JS qui rend une liste selectionnable/deselectionnable selon qu'une checkbox est cochee/decochee.Ma fonct If If Else... [ par plx4ever ] Salut à tous !Alors voila mon petit probleme qui doit etre tres simple a resoudre pourtant...Mon code: function verif(formulaire) { if(formulaire.nom. Svp Help me Pb IE6 [ par sami ] Bonjour J'ai un pb avec mon code javascript, ce code fonctionne bien sur Firefox mais pas du tout sur IE6. En fait, je veux bien rem pb value d'une zone de teste [ par lsprax83 ] bonsoir tout le mondebon voila mon petit script : function generer(ou){    var Inp;       //ajout d'une zone de texte         Inp=doc Contrôle de formulaire [ par typher ] Bonjour,Alors voila j'ai un petit problème avec mon code javascript qui suit :Code Java :if(document.form.naissance.value !=""< form [ par makito ] Voici une partie de mon code javascript :     var _RateValue = 0     function SaveRate(Value) {             _RateValue = Value;             document.f toujours u point a ma deniere varaible ? [ par nicos442 ] Bonjours a tous !mon scripte sert a visiter une page garce aux iframes (tout est sur la meme page) ,pour cela je demande de rentrer 3 variable qui son toujours u point a ma deniere varaible ? [ par nicos442 ] Bonjours a tous !mon scripte sert a visiter une page garce aux iframes (tout est sur la meme page) ,pour cela je demande de rentrer 3 variable qui son Textarea et TinyMCE WYSIWYG [ par soundpanther ] Bonjour, Voila un script qui permet d'envoyer le value d'un champ vers un textarea, mais quand je rajoute un code javascript tinyMCE WYSIWYG pour re Style' a la valeur Null ou n'est pas un objet [IE] [ par fuggerbit1 ] Bonjour,J'ai fait un petit bout de code avec des onglets et il marche très biens sous FF par contre IE me dit :'Style' a la valeur Null ou n'est pas


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,936 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales