|
auteurs : simone.51, Fabszn |
Si vous essayez de debbuger un script sous Internet Explorer, vous risquez de rencontrer quelques problèmes...
En effet, la ligne de l'erreur signalée ne correspond pas à la ligne du code que vous avez crée.
Pour retrouver l'erreur à la bonne ligne, il faut faire afficher la source de la page.
Clic droit --> Afficher la source
Avec le navigateur Mozilla(et donc FireFox), qui possède un debugger
javascript integré, c'est un peu plus simple.
Lorsqu' une erreur javascript est détectée, celle ci est loggée dans une console
sous forme de lien. Lorsque l'on clique sur le lien celui ci nous envoie
directement à la ligne concernée par l'erreur(dans 99% des cas).
En tous cas cela permet de travailler plus vite en javascript.
|
|
auteur : BrYs |
Car en javascript le "+" est le symbole de concatènation.
Pour additionner il faut utiliser parseInt() .
Exemple :
variable1 = document.formulaire.champs1.value;
variable2 = document.formulaire.champs2.value;
total = variable1 + variable2;
|
Avec parseInt() :
variable1 = document.formulaire.champs1.value;
variable2 = document.formulaire.champs2.value;
total = parseInt(variable1,10)+ parseInt(variable2,10);
|
|
|
auteur : simone.51 |
Par exemple, vous voulez faire revenir un internaute sur la page précédente au bout de 2 secondes:
setTimeout(function(){history.back()},2000);
|
Sous Firefox, il est également possible de passer des arguments à la
fonction appellée, en rajoutant des arguments à la fonction setTimeout:
setTimeout(alert, 2000, 'gnark');
|
Ce code permet d'afficher (sous Firefox et Opéra) un message box avec
le texte gnark au bout de 2 secondes.
|
|
auteur : simone.51 |
Tout d'abords, le problème ne se pose pas qu'avec le php, il se pose avec tous les autres langages de requête mais le principe reste le même.
Il faut aussi savoir que ça ne marche que dans un sens. On ne peut pas exécuter du code php à partir d'un script Javascript.
Pour exécuter du code php, il faut repartir sur le serveur.
Rappel : Le php s'exécute coté serveur tandis que le Javascript s'exécute coté client.
Par contre, on peut utiliser des variables php dans du code Javascript.
<?$sql = "Select texte From Table Where idTable = 1";
$resultat = execute_sql($sql);
$champ = mysql_fetch_array($result);
print '<script language="javascript">';
print 'alert("$champ[texte]");';
print '</script>' ;
?>
|
Dans cet exemple, on exécute une requête et ensuite, on fait afficher le résultat dans une fenêtre de type alert.
Il faut faire attention soit de bien intervertir les ' et " soit il faut utiliser les \".
Par contre, si dans cet exemple, nous avions interverti ' et ", nous aurions obtenu " $champ[texte] " dans la fenêtre alert !!!
|
|
auteur : BrYs |
Tout d'abord il faut créer un document que l'on appellera "mon_fichier_script.js"
dans lequel on écrira le code que l'on souhaite integrer, SANS les balises
<script></script>.
Ensuite dans la page web il suffira d'integrer :
<script type="text/javascript" src="mon_fichier_script.js"></script>
|
|
|
auteur : SpaceFrog |
document.write('mon texte') eval(' ma formule ')
|
Lorsque vous écrivez votre code au moyen de document.write, il arrive bien souvent que le texte contienne des caractères réservés du language JavaScript.
Pour s'assurer que vous avez bien placé tous les caractères d'échappement, il suffit de tester au moyen d'un alert :
alert('\<frame name=\"principal\" src=\"\/repertoire\/fichier.htm\"\>')
|
lorsque le code retourné par la boite de message est correct, il vous suffit de remplacer alert par document.write :
document.write('\<frame name=\"principal\" src=\"\/repertoire\/fichier.htm\"\>')
|
|
|
auteur : simone.51 |
C'est tout simplement impossible.
Le langage javascript s'exécute coté client, donc cela posserait d'énormes
problèmes de sécurité.
|
|
auteur : simone.51 |
Cette technique est parfois appellée "pass-thru" (passage à travers):
switch (val){
case 1:
case 2:
break;
case 3:
case 4:
break;
default :
break;
}
|
|
|
auteur : SpaceFrog |
var MonObjet = document.getElementById('Obj');
with (MonObjet){
.className = 'blah';
.setAttribute( "alt", "new text" );
}
|
|
|
auteur : denisC |
Les blocs try/catch permettent d'éviter certaines exceptions déclenchées
par javascript à l'exécution du code. Par exemple:
try {
i = 1 / 0;
}
catch ( e ) {
alert ( e );
}
|
|
|
auteur : SpaceFrog |
Voila une méthode permettant de créer dynamiquement d'autres fonctions :
function creationFonction(param1, param2, CorpsFonction)
{
return new Function(param1, param2 ,CorpsFonction);
}
var maFonction = creationFonction("x", "y", "return x+y");
alert(maFonction(1,2));
|
|
Consultez les autres F.A.Q's
Les sources présentées sur cette page sont libres de droits
et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation
constitue une œuvre intellectuelle protégée par les droits d'auteur.
Copyright © 2004 Developpez Developpez LLC.
Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne
peut être faite de ce site ni de l'ensemble de son contenu : textes, documents
et images sans l'autorisation expresse de Developpez LLC. Sinon vous encourez
selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.