Problème lié à la disparition de la balise "name" + insertion smileys.

Problème lié à la disparition de la balise "name" + insertion smileys. - HTML/CSS - Programmation

Marsh Posté le 22-12-2002 à 19:21:25    

Voilà le topo :
 
Jusqu'à présent en HTML, pour insérer un smiley dans un textarea :
 
<form name="formtruc"...
<textarea name="textemachin"...
 
En javascript on aura très simplement :
 
 
function smiley()
 {
 document.formtruc.textemachin.value = document.formtruc.textemachin.value + '[:)]';
 document.formtruc.textemachin.focus();
  }
 
Avec le XHTML 1.1, la balise name est remplacée par la balise id.
 
Très bien, mais...
 
function smiley()
 {
 document.getElementById(formtruc';).getElementById('textemachin';).value = document.getElementById(formtruc';).getElementById('textemachin';).value + '[:)]';
 document.getElementById(formtruc';).getElementById('textemachin';).focus();
  }
 
ne fonctionne pas...  :sweat:  
 
Comment faire ??

Reply

Marsh Posté le 22-12-2002 à 19:21:25   

Reply

Marsh Posté le 22-12-2002 à 20:08:47    

Hermes le Messager a écrit :

document.getElementById(formtruc';).getElementById('textemachin';).value

l'id n'a pas de concept de hiérarchie, c'est une liste. donc
 
document.getElementById('textemachin';).value

Reply

Marsh Posté le 22-12-2002 à 20:25:11    

Un énorme merci  :love:  
 
C'était simple, mais encore fallait-il le savoir.  :hello:

Reply

Marsh Posté le 23-12-2002 à 08:40:47    

Ce n'est que pour les balises a et map que l'attribut name a été remplacé par id.

Reply

Marsh Posté le 23-12-2002 à 13:13:25    

Hansolo a écrit :

Ce n'est que pour les balises a et map que l'attribut name a été remplacé par id.


 
Non, pour la balise form également.

Reply

Marsh Posté le 23-12-2002 à 17:23:28    

on en apprend tous les jours   [:virusx]

Reply

Marsh Posté le 23-12-2002 à 17:39:48    

Hermes le Messager a écrit :


Non, pour la balise form également.


 
Source ?

Reply

Marsh Posté le 23-12-2002 à 17:51:43    

au passage, tu fais :
 
document.getElementById('textemachin').value = document.getElementById('textemachin').value + ':)';
 
tu peux utiliser à la place l'opérateur +=  
 
document.getElementById('textemachin').value += ':)';
 

http://www.w3.org/TR/xhtml1/#h-4.10
 
HTML 4 defined the name attribute for the elements a, applet, form, frame, iframe, img, and map. HTML 4 also introduced the id attribute. Both of these attributes are designed to be used as fragment identifiers.
 
[...]
 
Note that in XHTML 1.0, the name attribute of these elements is formally deprecated, and will be removed in a subsequent version of XHTML.
 
puis plus loin dans C.8. Fragment Identifiers :
 
Finally, note that XHTML 1.0 has deprecated the name attribute of the a, applet, form, frame, iframe, img, and map elements, and it will be removed from XHTML in subsequent versions.

Reply

Marsh Posté le 23-12-2002 à 18:03:17    

Merci :)

Reply

Marsh Posté le 23-12-2002 à 18:55:43    

youdontcare a écrit :

au passage, tu fais :
 
document.getElementById('textemachin';).value = document.getElementById('textemachin';).value + ':)';
 
tu peux utiliser à la place l'opérateur +=  
 
document.getElementById('textemachin';).value += ':)';
 
 


 
 :jap: merci.
 

Reply

Marsh Posté le 23-12-2002 à 18:55:43   

Reply

Marsh Posté le 24-12-2002 à 04:04:02    

youdontcare a écrit :


http://www.w3.org/TR/xhtml1/#h-4.10
 
HTML 4 defined the name attribute for the elements a, applet, form, frame, iframe, img, and map. HTML 4 also introduced the id attribute. Both of these attributes are designed to be used as fragment identifiers.
 
[...]
 
Note that in XHTML 1.0, the name attribute of these elements is formally deprecated, and will be removed in a subsequent version of XHTML.
 
puis plus loin dans C.8. Fragment Identifiers :
 
Finally, note that XHTML 1.0 has deprecated the name attribute of the a, applet, form, frame, iframe, img, and map elements, and it will be removed from XHTML in subsequent versions.


 
Yep! le seul problème, que j'ai rencontré sur des serveurs mal mis à jours: certaines versions de php ne reconnaissent pas les formulaires nommé par id. C'est réparé avec les version récentes, mais si vous les traiter avec php, faites le test pour éviter les mauvaises surprises...

Reply

Marsh Posté le 24-12-2002 à 14:56:32    

:jap:  
 
Heureusement que "name" existe encore pour les <input> et les textarea dans le XHTML 1.1  :D

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed