J'ai pu voir chez un ami qui utilise Firefox, qu'il y a un problème sur mon
site http://bbeaucha.club.fr/Cinema/recherche.php
En effet quand l'on saisi des caractères dans le champ "Avec l'acteur
suivant", un combox apparait avec des solutions obtenu de la BDD (façon
AJAX).
L'utilisateur choisi ensuite un nom dans ce combobox et le nom est reporté
dans le champ "Avec l'acteur suivant". en tout sur IE mais apparement pas
sur firefox.
Le code qui gère cela est ici après. La fonction acteur_select(), à ma
connaissance, devrait fonctionner sur tous les navigateurs alors je ne
comprens pas.
Merci d'avance si quelqu'un me donner une piste
function handleHttpResponse() {
if (xhr.readyState == 4 && xhr.status == 200) {
//var actor = xhr.responseText;
var club = xhr.responseText.indexOf('</XMP>');
//alert(club);
if (club >0) {var actor = xhr.responseText.slice(0,club);}
else {var actor = xhr.responseText}
results = actor.split(",");
taille = results.length;
if (taille > 5) {taille = 5}
//alert(xhr.responseText);
chaine = "";
chaine += "<select name='Acteur_liste'";
chaine +=" size=";
chaine += taille;
chaine +=" onclick='javascript:acteur_select();'>\n";
for (p in results) {
//alert (results[p]);
chaine += "<option value='";
chaine += results[p];
chaine += "'>";
chaine += results[p];
chaine += "</option>";
chaine += "\n";
}
chaine += "</select>\n";
document.getElementById('poss').innerHTML = chaine;
}
}
function acteur_select() {
document.getElementById('Acteur').value =
document.getElementById('Acteur_liste').value;
}
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
ASM
Bonjour,
J'ai pu voir chez un ami qui utilise Firefox, qu'il y a un problème sur mon site http://bbeaucha.club.fr/Cinema/recherche.php
j'irai même pas voir, ce n'est pas la peine
function acteur_select() { document.getElementById('Acteur').value = document.getElementById('Acteur_liste').value; }
à tous les coups tes champs ou sélecteurs Acteur Acteur_liste (ou autre éléments du form) n'ont pas d'id et n'ont qu'un nom (qui contente les approximations d'IE) FireFox ne trouve donc pas ces éléments
<input type="text" name="Acteur" id="Acteur" >
devrait cette fois contenter tous les navigateurs (du moins ceux causant le DOM ...)
note que tu aurais pu t'éviter ce tracas avec :
function acteur_select() { document.forms['monForm'].elements['Acteur'].value document.forms['monForm'].elements['Acteur_liste'].value; }
ou
function acteur_select() { with(document.forms['monForm']) { Acteur.value = Acteur_liste.value; } }
si le nom du formulaire était 'monForm'
-- Stephane Moriaux et son [moins] vieux Mac
Bonjour,
J'ai pu voir chez un ami qui utilise Firefox, qu'il y a un problème sur mon
site http://bbeaucha.club.fr/Cinema/recherche.php
j'irai même pas voir, ce n'est pas la peine
function acteur_select() {
document.getElementById('Acteur').value =
document.getElementById('Acteur_liste').value;
}
à tous les coups tes champs ou sélecteurs
Acteur
Acteur_liste
(ou autre éléments du form) n'ont pas d'id
et n'ont qu'un nom (qui contente les approximations d'IE)
FireFox ne trouve donc pas ces éléments
<input type="text" name="Acteur" id="Acteur" >
devrait cette fois contenter tous les navigateurs
(du moins ceux causant le DOM ...)
note que tu aurais pu t'éviter ce tracas avec :
function acteur_select() {
document.forms['monForm'].elements['Acteur'].value document.forms['monForm'].elements['Acteur_liste'].value;
}
ou
function acteur_select() {
with(document.forms['monForm']) {
Acteur.value = Acteur_liste.value;
}
}
J'ai pu voir chez un ami qui utilise Firefox, qu'il y a un problème sur mon site http://bbeaucha.club.fr/Cinema/recherche.php
j'irai même pas voir, ce n'est pas la peine
function acteur_select() { document.getElementById('Acteur').value = document.getElementById('Acteur_liste').value; }
à tous les coups tes champs ou sélecteurs Acteur Acteur_liste (ou autre éléments du form) n'ont pas d'id et n'ont qu'un nom (qui contente les approximations d'IE) FireFox ne trouve donc pas ces éléments
<input type="text" name="Acteur" id="Acteur" >
devrait cette fois contenter tous les navigateurs (du moins ceux causant le DOM ...)
note que tu aurais pu t'éviter ce tracas avec :
function acteur_select() { document.forms['monForm'].elements['Acteur'].value document.forms['monForm'].elements['Acteur_liste'].value; }
ou
function acteur_select() { with(document.forms['monForm']) { Acteur.value = Acteur_liste.value; } }
si le nom du formulaire était 'monForm'
-- Stephane Moriaux et son [moins] vieux Mac
ASM
Le code qui gère cela est ici après. La fonction acteur_select(), à ma connaissance, devrait fonctionner sur tous les navigateurs alors je ne comprens pas. à tous z'azzards
function handleHttpResponse() { if (xhr.readyState == 4 && xhr.status == 200) { var club = xhr.responseText.indexOf('</XMP>'); var actor = (club >0)? xhr.responseText.slice(0,club) : xhr.responseText; results = actor.split(","); taille = results.length; if (taille > 5) {taille = 5} var opt = ''; var selct = document.createElement('select'); selct.name = 'Acteur_liste'; selct.id = 'Acteur_liste'; selct.size = taille; selct.onclick = 'acteur_select(); for (p in results) { opt = document.createElement('option'); opt.value = results[p]; opt.text = results[p]; selct.appendChild(opt); } document.getElementById('poss').appendChild(selct); } }
-- Stephane Moriaux et son [moins] vieux Mac
Le code qui gère cela est ici après. La fonction acteur_select(), à ma
connaissance, devrait fonctionner sur tous les navigateurs alors je ne
comprens pas.
à tous z'azzards
Le code qui gère cela est ici après. La fonction acteur_select(), à ma connaissance, devrait fonctionner sur tous les navigateurs alors je ne comprens pas. à tous z'azzards
function handleHttpResponse() { if (xhr.readyState == 4 && xhr.status == 200) { var club = xhr.responseText.indexOf('</XMP>'); var actor = (club >0)? xhr.responseText.slice(0,club) : xhr.responseText; results = actor.split(","); taille = results.length; if (taille > 5) {taille = 5} var opt = ''; var selct = document.createElement('select'); selct.name = 'Acteur_liste'; selct.id = 'Acteur_liste'; selct.size = taille; selct.onclick = 'acteur_select(); for (p in results) { opt = document.createElement('option'); opt.value = results[p]; opt.text = results[p]; selct.appendChild(opt); } document.getElementById('poss').appendChild(selct); } }
-- Stephane Moriaux et son [moins] vieux Mac
Bruno Beauchamp
Dans le message 44e8ce0b$0$856$, ASM a écrit:
Le code qui gère cela est ici après. La fonction acteur_select(), à ma connaissance, devrait fonctionner sur tous les navigateurs alors je ne comprens pas. à tous z'azzards
J'ai essayé cela. maintenant que tu me le rappelle, il me semble avoir lu qu'il faut utiliser les ID='' et non les name=''
-- Assyril Adresse à Modifier pour réponse
Dans le message 44e8ce0b$0$856$ba4acef3@news.orange.fr, ASM a écrit:
Le code qui gère cela est ici après. La fonction acteur_select(), à ma
connaissance, devrait fonctionner sur tous les navigateurs alors je ne
comprens pas.
à tous z'azzards
Le code qui gère cela est ici après. La fonction acteur_select(), à ma connaissance, devrait fonctionner sur tous les navigateurs alors je ne comprens pas. à tous z'azzards
J'ai essayé cela. maintenant que tu me le rappelle, il me semble avoir lu qu'il faut utiliser les ID='' et non les name=''
-- Assyril Adresse à Modifier pour réponse
ASM
maintenant que tu me le rappelle, il me semble avoir lu qu'il faut utiliser les ID='' et non les name=''
c'est à dire qu'avec : document.getElementById('Acteur_liste') qui contient getElementById ( by id ! ) un navigateur "consciencieux" ne se perd pas à faire getElementByName ( by name ) qui, d'ailleurs n'existe pas.
Le name de l'élément servira au php pour le récupérer, donc à garder.
Le name de l'élément pourra servir au JS si on utilise la bonne méthode: document.recherche.Acteur_liste.value
L'id de l'élément est à stipuler *en plus* dans la balise de cet élément si on emploie des méthodes ou fonctions liées au DOM : document.getElementById('Acteur_liste').value
-- Stephane Moriaux et son [moins] vieux Mac
maintenant que tu me le rappelle, il me semble avoir lu
qu'il faut utiliser les ID='' et non les name=''
c'est à dire qu'avec :
document.getElementById('Acteur_liste')
qui contient
getElementById ( by id ! )
un navigateur "consciencieux" ne se perd pas à faire
getElementByName ( by name )
qui, d'ailleurs n'existe pas.
Le name de l'élément servira au php pour le récupérer, donc à garder.
Le name de l'élément pourra servir au JS si on utilise la bonne méthode:
document.recherche.Acteur_liste.value
L'id de l'élément est à stipuler *en plus* dans la balise de cet élément
si on emploie des méthodes ou fonctions liées au DOM :
document.getElementById('Acteur_liste').value
maintenant que tu me le rappelle, il me semble avoir lu qu'il faut utiliser les ID='' et non les name=''
c'est à dire qu'avec : document.getElementById('Acteur_liste') qui contient getElementById ( by id ! ) un navigateur "consciencieux" ne se perd pas à faire getElementByName ( by name ) qui, d'ailleurs n'existe pas.
Le name de l'élément servira au php pour le récupérer, donc à garder.
Le name de l'élément pourra servir au JS si on utilise la bonne méthode: document.recherche.Acteur_liste.value
L'id de l'élément est à stipuler *en plus* dans la balise de cet élément si on emploie des méthodes ou fonctions liées au DOM : document.getElementById('Acteur_liste').value