gazalii
Messages postés104Date d'inscriptionjeudi 22 juillet 2004StatutMembreDernière intervention13 février 2008
-
26 févr. 2007 à 11:00
gazalii
Messages postés104Date d'inscriptionjeudi 22 juillet 2004StatutMembreDernière intervention13 février 2008
-
27 févr. 2007 à 11:28
bonjour a vous tous
voila je suis entrain de realise une application en ajax, j'ai un probleme qui me semble etrange
j'ai un simple formulaire ou je fais l ajout o la maj des utilisateurs avant de valider j'ai fais une fonction qui controle si le champs email est vide ou conforme a la syntaxe et la il m affiche une erreur javascipt
sur alert(1)
voici le code
else {
var message_alerts = "%%ADMIN_SPACE:msgInfo%%: \n" + message_alert ;
alert(1);
return false;
}
l'erreur : Permission
refusée de modifier la propriété XULElement.selectedIndex' when calling
method: [nsIAutoCompletePopup::selectedIndex]" nsresult: "0x8057001e
(NS_ERROR_XPC_JS_THREW_STRING)" location: "JS frame ::
ne pose aucun problème. essayer juste ça.
sûr de la ligne ? pas la précédente ?
var message_alerts = "%%ADMIN_SPACE:msgInfo%%: \n" + message_alert ;
défini ou pas ?
c'est quoi ? comme l'erreur cause de XULElement ?
ou ailleurs...
avec FireFox, regarder la console d'erreurs, et mieux : télécherger FireBug
avec Internet Explorer, activer le deboggage, et mieux : télécharger le Debugger IE
gazalii
Messages postés104Date d'inscriptionjeudi 22 juillet 2004StatutMembreDernière intervention13 février 2008 26 févr. 2007 à 11:41
enfaite c'est un fonction javascript c firebug qui m'allert que j'ai une erreur voici toute la fonction l'erreur est sur la ligne 715 quand le champs email est vide le message alert s'affiche bien mais avec firebug m'affiche l'erreur (si le champs email n'est pas conforme a la syntaxe il affiche l'alert + le bug ligne 709)
function verify_modif(){
677
678
679 var message_alert = "";
680
681 for(var i = 0; i < window.document.forms[0].length ; i++) {
682 var rechRapide = window.document.forms[0].elements[i].value;
683 var nom_champ = window.document.forms[0].elements[i].id;
684 if(nom_champ=="comment" || nom_champ=="phone" || nom_champ == "entity" || nom_champ == "company_id" ) ;
685 else {if(rechRapide == "")
686 {
687 window.document.forms[0].elements[i].focus();
688 window.document.forms[0].elements[i].style.backgroundColor = "#CCCFEC";
689 message_alert +="Veuillez remplir le champ : " + nom_champ +"\n";
690 }
691 }
692 }
693 if (window.document.getElementById("company_id").value=="") message_alert += "Le nom de la company est incorrect ! \n" ;
694 if (message_alert == "")
695
696 { //verification du mot de passe dupliquer
697 if (window.document.forms[0].elements[2].value!=window.document.forms[0].elements[3].value)
698 {
699 message_alert += "Erreur confirmation mot de passe \n";
700 message_alert = "Informations omises dans le formulaire: \n" + message_alert;
701 alert(message_alert);
702 return false;
703 }
704 else { var str = document.getElementById("email").value ;
705 var filter=/^.+@.+\..{2,3}$/;
706
707 if (filter.test(str)) return true ;
708 else { message_alert += "Adresse E-mail incorrecte !! \n" ;
709 alert(message_alert);
710 return false;
711 }
712 }
713 }else {
714 var message_alerts = "Informations omises dans le formulaire: \n" + message_alert ;
715 alert(message_alert);
716 return false;
717
718 }
719
720
721 }
gazalii
Messages postés104Date d'inscriptionjeudi 22 juillet 2004StatutMembreDernière intervention13 février 2008 26 févr. 2007 à 12:05
pour l'alert 1 je l'ai fais juste pour être sur que m'a fonction ne plante pas sur le texte mais en principe je fais un message dans les balises %%ADMIN_SPACE:msgRemplissage%% pour la gestion des langues (aucun probleme sur ces messages)
voici exactement le message d'erreur :[Exception...
"'Permission refusée de modifier la propriété XULElement.selectedIndex'
when calling method: [nsIAutoCompletePopup::selectedIndex]" nsresult:
"0x8057001e (NS_ERROR_XPC_JS_THREW_STRING)" location: "JS frame ::
http://adresse:: verify_modif :: line 715" data: no]
et voici la fonction
function verify_modif(){
var message_alert = "";
for(var i = 0; i < window.document.forms[0].length ; i++) {
var rechRapide = window.document.forms[0].elements[i].value;
var nom_champ = window.document.forms[0].elements[i].id;
if(nom_champ=="comment" || nom_champ=="phone" || nom_champ == "entity" || nom_champ == "company_id" ) ;
else {if(rechRapide == "")
{
window.document.forms[0].elements[i].focus();
window.document.forms[0].elements[i].style.backgroundColor = "#CCCFEC";
message_alert +="%%ADMIN_SPACE:msgRemplissage%% : " + nom_champ +"\n";
}
}
}
if (window.document.getElementById("company_id").value=="") message_alert += "%%ADMIN_SPACE:erreurCompany%% \n" ;
if (message_alert == "")
{ //verification du mot de passe dupliquer
if (window.document.forms[0].elements[2].value!=window.document.forms[0].elements[3].value)
{
message_alert += "%%ADMIN_SPACE:msgErreurPassword%% \n";
message_alert = "%%ADMIN_SPACE:msgInfo%%: \n" + message_alert;
alert(message_alert);
return false;
}
else { var str = document.getElementById("email").value ;
var filter=/^.+@.+\..{2,3}$/;
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 201330 26 févr. 2007 à 12:41
reste plus que le formulaire, les champs quoi... et je regarde
mais tu es sûr que les %% ??? %% c'est pas un autre langage ?
ni HTML, ni javascript !
<hr />
gazalii
Messages postés104Date d'inscriptionjeudi 22 juillet 2004StatutMembreDernière intervention13 février 2008 26 févr. 2007 à 12:47
voici le formulaire c 'est un peu long comme traitement je vais juste poster le traitement de l'affichage pour les variables je fais une requette sql (pour les %% c juste un message si tu vois la fonction en haut avec les numeros tu vas trouver que firebug affiche le texte)voici le formulaire
gazalii
Messages postés104Date d'inscriptionjeudi 22 juillet 2004StatutMembreDernière intervention13 février 2008 26 févr. 2007 à 13:40
pour id_company ca marche meme chose pour le input delet moi je cherche une explication pour le l'erreur (si j'enleve le alert il n'y a aucun message d'erreur)
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 201330 26 févr. 2007 à 13:59
pas id_company, company_id
quel alert ? il y en a plusieurs.
je t'assures que, quel que soit le navigateur,
je serais plus qu'étonné qu'un simple script de contrôle d'un
formulaire donne le message d'erreur cité.
à mon humble avis encore une fois, l'erreur est "ailleurs"
mais tant qu'on n'aura pas la page html/javascript générée...
essayes avec le formualire et le script donné, simplement,
dans un bête fichier .htm, si tu rectifies les erreurs de syntaxe
( du entre'autre au php ) et que tu élimines celle avec "company_id" ,
pas de plantage, ni avec FF, ni avec IE.... et tu verra que les %% ??? %%%
sont "tel quel" à l'affichage.
tu utilises donc autre chose que html/javascript/php, mais je ne sais pas quoi.
cs_roro06
Messages postés732Date d'inscriptionjeudi 2 janvier 2003StatutMembreDernière intervention29 octobre 2007 26 févr. 2007 à 14:12
Bonjour
C'est une erreur qui revient souvent dés qu'on met un alert avec l'utilisation d'"ajax"
Bul --> (bonjour, d'abord ) C'est FF qui donne cette erreur, je ne pense pas que k-meleon signale quoi que ce soit dans ce cas-ci (on peut chercher longtemps !)
Personnellement, je n'ai jamais constaté de dysfonctionnement malgré cette erreur, et je l'ignore purement, a priori ça n'empêche pas les pages de fonctionner, donc ... perso, je pense à un bug de firebug, (mais ça serait un comble)
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 201330 26 févr. 2007 à 17:59
Salut Roro,
les bugs sont très très rares, c'est vrai pour tous les navigateurs...
ils ont parfois des comportements qui ne nous conviennent pas,
qui nous semblent bizarres... mais un plantage ?
curieux ! surtotu que là
on ne semble pas dans une "fonction Ajax" ?
mais va savoir... comme on ne dispose pas de tout...
tu as peut-être raison...
gazalii
Messages postés104Date d'inscriptionjeudi 22 juillet 2004StatutMembreDernière intervention13 février 2008 27 févr. 2007 à 11:28
bonjour ce matin je suis revenu sur la meme fonction pour la reteste je ne sais pas pourquoi j'ai pense a enleve window.document.forms[0].elements[i].focus(); de ma fonction et voila je n'ai plus d'erreur donc il signal l'erreur apres dans lalert