Problème sur le résultat du nombre d'enfant d'un ElementHTLM
gprog Etu
-
e666 Messages postés 470 Date d'inscription Statut Membre Dernière intervention -
e666 Messages postés 470 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
je suis en DUT et je fais un stage en informatique (je suis débutant quand même).
L'objectif étant de faire une suite bureautique (pas très complexe), juste une sorte de grille ("telle que excel) où l'on peut éditer..
j'avance pas par pas et je suis bloqué sur un point.
mon principe :
faire un tableau html et dans les cellules du tableau, je met un type input (text ou number selon besoin).
1) j'arrive pas à récupérer la valeur de du type input
2) Lorsque je compte le nombre d'enfant dans la cellule, le résultat est 3 et pas 1.
Je vous remercie de votre aide et du temps !
<script>
function voirContenu()
{
var x = document.getElementById("cell_0");
alert(x.childNodes.length); //firstChild.nodeValue;
}
</script>
<table id="monTableau_Edit" border="1">
<caption>Tabelau Edit</caption>
<tbody id="mes_cellules">
<tr id="ligne_0"><!-- -->
<td id="cell_0"> <input id="essaie0" type="text" style="border:none; name="essaie0" value="Imagine" /> </td>
</tr>
</tbody>
</table>
je suis en DUT et je fais un stage en informatique (je suis débutant quand même).
L'objectif étant de faire une suite bureautique (pas très complexe), juste une sorte de grille ("telle que excel) où l'on peut éditer..
j'avance pas par pas et je suis bloqué sur un point.
mon principe :
faire un tableau html et dans les cellules du tableau, je met un type input (text ou number selon besoin).
1) j'arrive pas à récupérer la valeur de du type input
2) Lorsque je compte le nombre d'enfant dans la cellule, le résultat est 3 et pas 1.
Je vous remercie de votre aide et du temps !
<script>
function voirContenu()
{
var x = document.getElementById("cell_0");
alert(x.childNodes.length); //firstChild.nodeValue;
}
</script>
<table id="monTableau_Edit" border="1">
<caption>Tabelau Edit</caption>
<tbody id="mes_cellules">
<tr id="ligne_0"><!-- -->
<td id="cell_0"> <input id="essaie0" type="text" style="border:none; name="essaie0" value="Imagine" /> </td>
</tr>
</tbody>
</table>
A voir également:
- Problème sur le résultat du nombre d'enfant d'un ElementHTLM
- Resultat foot - Télécharger - Vie quotidienne
- Nombre de jours entre deux dates excel - Guide
- Nombre facile - Télécharger - Outils professionnels
- Lexer resultat - Télécharger - Sport
- Alexa pour enfant - Guide
2 réponses
J'ai finalement trouvé ce qui n'allait pas.
Pour ceux qui auront ce problème :
il faut juste enlever les espaces dans la balise td qui encadre le type input car ils comptent en noeud de texte.
Donc ne pas mettre d'espace mais juste le type input.
Pour ceux qui auront ce problème :
il faut juste enlever les espaces dans la balise td qui encadre le type input car ils comptent en noeud de texte.
Donc ne pas mettre d'espace mais juste le type input.
Salut,
C'est parce que tu as mis des espaces avant et après ton input. Le javascript compte ça comme du texte et donc cela fait 3 enfants avec ton input.
Pourquoi n'accèdes-tu pas directement à ton input ?
Tu lui as mis un identifiant en plus.
Il te suffit ensuite de faire inputName.value pour avoir sa valeur.
Donc ça donne ça pour ta fonction :
Aussi je te conseille de séparer ton javascript dans un fichier différent. De même, pour les styles CSS. Sinon ça va un peu être le bazar et difficile de s'y retrouver, de maintenir. Le HTML sert pour la structure de la page. Le Javascript pour les interractions. Et le CSS pour la mise en page, l'affichage.
Bonne chance !
C'est parce que tu as mis des espaces avant et après ton input. Le javascript compte ça comme du texte et donc cela fait 3 enfants avec ton input.
Pourquoi n'accèdes-tu pas directement à ton input ?
Tu lui as mis un identifiant en plus.
Il te suffit ensuite de faire inputName.value pour avoir sa valeur.
Donc ça donne ça pour ta fonction :
Les valeurs s'afficheront dans la console javascript pour le debug, c'est plus pratique que les alert les console.log. Pour y accéder: ctrl+shift+i dans chrome, opera, firefox. F12 sous IE.
function voirContenu()
{
var x = document.getElementById("essaie0");
console.log(x.value);
}
Aussi je te conseille de séparer ton javascript dans un fichier différent. De même, pour les styles CSS. Sinon ça va un peu être le bazar et difficile de s'y retrouver, de maintenir. Le HTML sert pour la structure de la page. Le Javascript pour les interractions. Et le CSS pour la mise en page, l'affichage.
Bonne chance !