Uncaught ReferenceError sur une variable
Résoluemrh Messages postés 439 Statut Membre -
Bonjour à tous,
Je viens vous demander votre aide avant de devenir fou !
J'ai un code Javascript qui fonctionne parfaitement sur une page, je le copie/colle sur une autre et l'adapte au besoin de cette page et là :
Erreur en console :
recette-ajout1.php:218 Uncaught ReferenceError: liste_ingredients is not defined
at plus_Ingredient (recette-ajout1.php:218:21)
Voici le code simplissime en question :
var selectAliment = document.getElementById("aliment");
var selectQte = document.getElementById("quantite");
function plus_Ingredient(){
if (selectAliment.value != '' && selectQte.value > 0){
// Récupération de l'aliment :
var text_aliment = selectAliment.options[selectAliment.selectedIndex].text;
text_aliment = text_aliment.replace(/[';|]/g,' ');
// Récupération des quantités :
var quantites = parseFloat(selectQte.value).toFixed(2);
// Construction de la chaine d'ingrédients :
liste_ingredients.value += "|" + text_aliment + ";" + quantites;
// Affichage de la table ingrédients sélectionnés :
ingredients();
}
}
function ingredients(){
alert(liste_ingredients);// Pour tester la construction de la chaine
/* SUITE DU CODE ...
var tableau_ingredients = liste_ingredients.value.split('|');*/
}
Et voici le code qui fonctionne parfaitement sans erreur en console, (pourtant sans déclaration de chaine_contrat):
var TotalContrat = 0;
document.getElementById("total_contrat").innerHTML = TotalContrat.toFixed(2);
var selectElmt = document.getElementById("prestation");
function plus_contrat() {
if (prestation.value != 0 && prix.value != 0 && quantite.value != 0) {
// index 0 - id_prestation
var text_prestation = selectElmt.options[selectElmt.selectedIndex].text;
text_prestation = text_prestation.replace(/[';|]/g,' ');
// index 1 - désignation_prestation
var ref_prestation = prestation.value;
ref_prestation = ref_prestation.replace(/[';|]/g,' ');
// index 2 - descriptif_prestation
var text_descriptif = descriptif.value;
text_descriptif = text_descriptif.replace(/[';|]/g,' ');
// index 3 - Prix prestation
var ref_prix = parseFloat(prix.value).toFixed(2);
// index 4 - Quantité_prestation
var ref_quantite = parseFloat(quantite.value).toFixed(2);
chaine_contrat.value += "|" + ref_prestation + ";" + text_prestation + ";" + text_descriptif + ";" + ref_prix + ";" + ref_quantite;
TotalContrat = TotalContrat + ref_prix * ref_quantite;
//total_contrat.value = TotalContrat.toFixed(2);// Pour une DIV
document.getElementById("total_contrat").innerHTML = TotalContrat.toFixed(2); // Pour une SPAN
document.getElementById("quantite").value = '';
contrat();
}
}
J'ai essayé ça en début de code :
window.onload=function(){
var liste_ingredients;
}
Mais ça ne change rien !
Une idée ?
Merci d'avance...
- Uncaught ReferenceError sur une variable
- Vba range avec variable ✓ - Forum VB / VBA
- Variable d'environnement temp ✓ - Forum Microsoft Office
- Vba excel sélectionner une plage de cellules variable ✓ - Forum Excel
- Variable objet ou variable de bloc with non définie - Forum VB / VBA
- Impossible de créer le fichier de travail. vérifiez la variable d'environnement temp - Forum Microsoft Office
2 réponses
Bonjour
liste_ingredients ... C'est quoi ? Un input dans ta page ? Car en effet.. tu n'initialises cette variable nui part..
Ooooohh bon sang, évidemment !
J'était tellement focalisé sur une variable que j'en ai oublié le .value qui renvoit à un input du formulaire !!!!
Du coup :
<input type="text" name="liste_ingredients" id="liste_ingredients" style="visibility: hidden;">
fonctionne nettement mieux que
<input type="text" name="chaine_contrat" id="chaine_contrat" style="visibility: hidden;">
MERCI JORDAN !