Bonjour, est ce que quelqu'un pourrais m'aider, voici mon code
function calculer_prix()
{
var prixTVA=0;
var prixTTC=0;
var prixHT=0;
$('#liste li').each(function()
{
var prix =$(this).find('.prixpanier').text();
var prix=parseFloat(prix);
console.log(prix);
var quantite = $(this).find('.quantitepro').text();
quantite = parseFloat(quantite);
console.log(quantite);
prixHT+=calculprixHT(prix,quantite);
console.log(prixHT);
});
function calculprixHT(prix,quantite)
{
var prixHT=prix*quantite;
return prixHT;
}
$("#prixHT").text(prixHT);
var TVA =$('.tva').text();
TVA = parseFloat(TVA);
function calculTVA(prixHT)
{
var prixTVA=prixHT*(TVA/100);
return prixTVA;
}
prixTVA=calculTVA(prixHT);
$("#resTVA").text(prixTVA);
function calculTTC(prixTVA,prixHT)
{
var prixTTC=prixHT+prixTVA;
return prixTTC;
}
prixTTC=calculTTC(prixTVA,prixHT);
$("#total").text(prixTTC);
}
j'essaye de convertir le prix de chaine en nombre mais vu que le prix est sous forme 99,59 il ne considère que 99.
Bonjour, je débute et je me retrouve bloqué dans le chapitre 5 jouez avec les variables il est demandé de créer un chapitre 2 avec 2 sous répertoires. Ensuite d'ajouter le contenu ci-dessus et le résultat devrait être "undefined"
Sauf que j'ai un message d'erreur qui dit "L’encodage de caractères du document HTML n’a pas été déclaré. Le document sera affiché avec des caractères incorrects pour certaines configurations de navigateur si le document contient des caractères en dehors de la plage US-ASCII. L’encodage de caractères de la page doit être déclaré dans le document ou dans le protocole de transfert."
J'essaie d'ajouter une valeur pour voir ce que ça donne et pareil le même message apparait. Je comprends pas d'où vient l'erreur.
Je suis au dernier exercice et bloque sur un point.
Tout mon code fonctionne sauf :
- L'utilisateur entre 2, ajoute le contact, et ce dernier est sauvegardé comme objet dans la var personne.
Mais comment créer un deuxième contact ? Je ne peux pas anticiper toutes les variables à créer ?
J'avais pensé créer une boucle pour dire que variable serait : var personne+x, mais impossible.
- Autre problème. Quand j'appel la description des objets. Les deux descriptions des objets déjà créés fonctionnent bien, mais celle du potentiel troisième objet (si encore vide) me cause une erreur. Logique, il n'y a pas d'objet.
J'espère avoir été clair. Je n'ai pas mis de code pour ne pas dévoyer l'exercice pour les autres
Bonjour, j'ai une petite question qui me taraude l'esprit, quelle est la syntaxe la plus appréciable entre
var compte = {
titulaire: "Alex",
solde: 0,
// Crédite le compte d'un certain montant
crediter: function (montant) {
this.solde = this.solde + montant;
},
// Débite le compte d'un certain montant
debiter: function (montant) {
this.solde = this.solde - montant;
},
// Renvoie la description du compte
decrire: function () {
var description = "Titulaire : " + this.titulaire +
", solde : " + this.solde + " euros";
return description;
}
};
console.log(compte.decrire());
var credit = Number(prompt("Entrez le montant à créditer :"));
compte.crediter(credit);
var debit = Number(prompt("Entrez le montant à débiter :"));
compte.debiter(debit);
console.log(compte.decrire());
Et
var compte = {};
compte.titulaire = 'Alex';
compte.solde = 0;
compte.crediter = function (montant) {
montant = Number(prompt('Saisissez un montant'));
compte.solde = compte.solde + montant;
}
compte.debiter = function (montant) {
montant = Number(prompt('Saisissez un montant'));
compte.solde = compte.solde - montant;
}
compte.description = function () {
return 'Titulaire ' + compte.titulaire + ', solde : ' + compte.solde + '€';
}
compte.crediter();
console.log(compte.description());
compte.debiter();
console.log(compte.description());
La première. Tant qu'à définir un objet, définis tout d'un coup. A définir le reste ailleurs, tu vas finir par ne plus retrouver où est-ce que tu as finalement ajouté la propriété X, Y ou Z. Si tout est défini dès la création de l'objet, tu es assuré dès la ligne suivante que toutes ces propriétés sont bien présentes. Ça parait bête sur un code simple comme ça, mais sur des choses plus complexes ça peut devenir un vrai problème. Globalement, rajouter une propriété à la volée, c'est une assez mauvaise chose, ça trahit souvent d'un problème de conception dans ce que tu fais.
/!\ Si je cesse de répondre c'est parce que vous êtes venus poster sans avoir suivi les cours de base sur le sujet. /!\
La première. Tant qu'à définir un objet, définis tout d'un coup. A définir le reste ailleurs, tu vas finir par ne plus retrouver où est-ce que tu as finalement ajouté la propriété X, Y ou Z. Si tout est défini dès la création de l'objet, tu es assuré dès la ligne suivante que toutes ces propriétés sont bien présentes. Ça parait bête sur un code simple comme ça, mais sur des choses plus complexes ça peut devenir un vrai problème. Globalement, rajouter une propriété à la volée, c'est une assez mauvaise chose, ça trahit souvent d'un problème de conception dans ce que tu fais.
Je suis actuellement de suivre le cours "AJAX et l'échange de données en JS", j'ai voulu essayé de transmettre en utilisant la méthode GET vers une page PHP:
Voici mon code en JS
function getXMLHttpRequest() {
var xhr = null;
if (window.XMLHttpRequest || window.ActiveXObject) {
if (window.ActiveXObject) {
try {
xhr = new ActiveXObject("Msxml2.XMLHTTP");
} catch(e) {
xhr = new ActiveXObject("Microsoft.XMLHTTP");
}
} else {
xhr = new XMLHttpRequest();
}
} else {
return null;
}
return xhr;
}
var xhr = getXMLHttpRequest();
function classer()
{
var test = "test";
var value1 = encodeURIComponent(test);
xhr.open("GET", 'index.php?param1=' + value1, true);
xhr.send(null);
document.getElementById("div1").innerHTML = "truc";
}
xhr.onreadystatechange = function() {
if (xhr.readyState == 4 && (xhr.status == 200 || xhr.status == 0))
{
document.getElementById("div2").innerHTML = "succes";
}
};
et le PHP
$param1 = (isset($_GET["param1"])) ? $_GET["param1"] : NULL;
if(isset($param1))
{
$db = new PDO('mysql:host=localhost;dbname=listecomposants;charset=utf8', 'root','');
//Affichage processeurs
$requestPr = $db->query('SELECT nom, gamme, socket, frequence, oc, turbo, consomation FROM processeur ORDER BY frequence DESC');
while($donnes0 = $requestPr->fetch(PDO::FETCH_ASSOC))
{
$afficheProc = new Processeur(...
echo 'Nom: '...
}
}
J'appelle ma fonction JS classer() grace à un bouton, l'appel se fait correctement j'ai même le message "succés" qui s'affiche (il doit s'afficher, si j'ai bien compris le cours, si toutes les étapes de récupération ont été un succés, cependant sur ma page php rien ne se passe...
Merci si vous avez une idée de la provenance de ce problème
GET permet de récupérer quelque chose. L'appel AJAX est asynchrone : la page ne va pas changer, si lors du succès de la requête tu ne fais rien, il ne va rien se passer.
Si tu veux transmettre des informations au serveur, c'est POST qu'il te faut.
Si ta page PHP n'a rien exécuté coté serveur, c'est que ta page PHP a un problème. Le "succès" d'une requête n'a rien à voir avec ce qu'elle retourne. Si le serveur dit que tout s'est bien passé, mais qu'il n'a rien fait (par exemple le si le isset retourne false il s'arrête direct), alors il y a succès, mais il ne s'est rien passé coté serveur.
/!\ Si je cesse de répondre c'est parce que vous êtes venus poster sans avoir suivi les cours de base sur le sujet. /!\
Dans la correction il utilise dans l'objet Cercle la propriété rayonpour valeur r qui est une variable déclarer en dehors de l'objet où l'on demande à l'utilisateur de taper un nombre du coup.
Comment le lien se fait entre l'utilisation d'une variable dans un objet et une méthode alors que cette variable est déclarer en dehors de l'objet et ne fait aucun passage en paramètre.
spoil correction :
/*
Exercice : objet cercle
*/
var r = Number(prompt("Entrez le rayon d'un cercle :"));
var cercle = {
rayon: r,
// Renvoie le périmètre du cercle
perimetre: function () {
return 2 * this.rayon * Math.PI;
},
// Renvoie l'aire du cercle
aire: function () {
return this.rayon * this.rayon * Math.PI;
// Autre possibilité
//return Math.pow(this.rayon, 2) * Math.PI;
}
};
console.log("Son périmètre vaut " + cercle.perimetre());
console.log("Son aire vaut " + cercle.aire());
est-ce embêtant de n'utiliser que des if et pas de if else ?
Je finis juste la première partie d'apprandre le javascript, mon exercice est juste puisqu'il fonction je viens de regarder la correction et je réalise que je n'utilise aucun else.
Alors je voudrais savoir quel type de problème cela peut engendrer ... si c'est considéré comme une faute ...
Il y a tout simplement des cas où l'un ou l'autre sont obligatoires ou ont plus de sens. Tu ne peux pas remplacer tout par des if dans toutes les situations.
/!\ Si je cesse de répondre c'est parce que vous êtes venus poster sans avoir suivi les cours de base sur le sujet. /!\
Dites moi, comment est-ce que je pourrais faire pour que si par exemple, je choisis le choisis le jeu de couleurs n°1, chaque couleur de ce jeu soit attribué à chaque input type="color" stp? en plus en prenant cet exemple, étant donné que dans ce jeu, il n'y a que 3 couleurs, et qu'il y a 4 input, il faut également prendre en compte le nombre d'input.
Je devrais certainement commencer par stocker les couleurs dans un tableau, du style :
j'ai un probleme avec le cours : créez des pages web interactives avec javascript
En gros quand j'appel mon document.body la console me return un NULL alor que j'ai copier le code fournie par le cours
Mon fichier cours.html :
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Ma page web</title>
<script src="../js/cours.js"></script>
</head>
<body>
<h1>Ma page web</h1>
<p>Bonjour, je m'appelle Baptiste.</p>
<p>J'habite dans la belle ville de <a href="http://www.lyon.fr">Lyon</a>.</p>
</body>
</html>
Mon fichier cours.js
var h = document.head; // La variable h contient l'objet head du DOM
console.log(h);
var b = document.body; // La variable b contient l'objet body du DOM
console.log(b);
Un screen de ma page sur firefox :
De plus quand j'ouvre le fichier cours.js avec sublime text le body et surligner en rose et je ne comprend pas pourquoi :
j'ai un probleme avec le cours : créez des pages web interactives avec javascript
En gros quand j'appel mon document.body la console me return un NULL alor que j'ai copier le code fournie par le cours
Mon fichier cours.html :
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Ma page web</title>
<script src="../js/cours.js"></script>
</head>
<body>
<h1>Ma page web</h1>
<p>Bonjour, je m'appelle Baptiste.</p>
<p>J'habite dans la belle ville de <a href="http://www.lyon.fr">Lyon</a>.</p>
</body>
</html>
Mon fichier cours.js
var h = document.head; // La variable h contient l'objet head du DOM
console.log(h);
var b = document.body; // La variable b contient l'objet body du DOM
console.log(b);
Un screen de ma page sur firefox :
De plus quand j'ouvre le fichier cours.js avec sublime text le body et surligner en rose et je ne comprend pas pourquoi :
- Edité par ValentinPerello il y a environ 16 heures
Salut ! Ca peut être dû au fait qu'il y ai un espace entre la fermeture du /head et l'ouverture du body, tu as essayé sans cet espace (qui ne sert à rien au passage) ?
Ca ne vient probablement pas de là, les formats XML se fichent des espacements entre les balises. Ca vient probablement du fait que l'inclusion du script JS est faite dans le head, et donc que c'est exécuté avant même que le navigateur ne reçoive le body de la page. Place ton inclusion JS à la fin du body, et tu n'auras plus de problème.
- Edité par Genroa 18 juin 2018 à 13:12:47
/!\ Si je cesse de répondre c'est parce que vous êtes venus poster sans avoir suivi les cours de base sur le sujet. /!\
Bonjour, je suis débutant et je rencontre un problème au niveau de la mise en place de mon environnement de travail ; je m'explique :
Après avoir mis en place mon environnement de travail au niveau de mon éditeur de code, j'en suis arrivé à passer du côté des outils de développement du côté de mon navigateur (Firefox). Seulement j'y ai tout de suite rencontré un problème, je ne sais pas trop à quel type d'erreur il est susceptible de correspondre, mais l'affichage de ma console rend la chose particulièrement visible. En espérant que ça puisse évoquer quelque chose à quelqu'un voici deux images comparatives, celle de l'exemple du cours, et ce qui s'affiche sur ma page ensuite :