0 votes

javascript n'est pas appelé

J'utilise le code HTML suivant

<html>
    <head>
        <Title>EBAY Search</title>
    </head>
    <script language="JavaScript" src="ajaxlib.js"></script>
    <body>
        Click here <a href="#" OnClick="GetEmployee()">link</a> to show content
        <div id="Result"><The result will be fetched here></div>
    </body>
</html>

Avec ce Javascript

var xmlHttp

function GetEmployee()

{

xmlHttp=GetXmlHttpObject()

if(xmlHttp==null)

{

alert("Your browser is not supported")

}

var url="get_employee.php"

url=url+"cmd=GetEmployee"

url=url+"&sid="+Math.random()

xmlHttp.open("GET",url,true)

xmlHttp.send(null)

}

function FetchComplete()

{

if(xmlHttp.readyState==4 || xmlHttp.readyState=="complete")

{

document.getElementById("Result").innerHTML=xmlHttp.responseText

}

if(xmlHttp.readyState==1 || xmlHttp.readyState=="loading")

{

document.getElementById("Result").innerHTML="loading"

}

}

function GetXmlHttpObject()

{

var xmlHttp=null;

try

{

xmlHttp=new XMLHttpRequest();

}

catch (e)

{

try

{

xmlHttp =new ActiveXObject("Microsoft.XMLHTTP");

}

}

return xmlHttp;

}

Cependant, il n'est pas appelé. get_employee.php fonctionne correctement lorsque je l'appelle tout seul, ce n'est donc pas le problème. Y a-t-il quelque chose d'anormal dans mon code qui l'empêcherait d'être appelé ? Je ne peux pas tester avec des extensions firefox, je n'y ai pas accès, donc ne donnez pas cela comme réponse.

edit : le problème est que le javascript n'est pas appelé du tout. J'ai corrigé le problème du point d'interrogation, mais même un simple javascript avec une alerte n'est pas appelé.

0voto

Paul Tomblin Points 83687

Ne devrait-il pas y avoir un point d'interrogation ou une esperluette entre les mots getcommand.php et le cmd= pièces ?

0voto

Chris Kimpton Points 2916

Je ne pense pas qu'il s'agisse de quelque chose de stupide comme un point d'interrogation manquant dans l'url.

var url="get_employee.php"
url=url+"cmd=GetEmployee"
url=url+"&sid="+Math.random()

Je m'attendais à voir "?cmd=GetEmployee"

0voto

Chris Kimpton Points 2916

Vous pouvez utiliser alert(url) pour vérifier l'url exacte envoyée.

0voto

dylanfm Points 4668

Assurez-vous de ne pas égarer ou nommer un fichier. Vous pouvez également remplacer OnClick par des minuscules.

0voto

acrosman Points 7688

Si vous ne pouvez pas utiliser un véritable débogueur, vous pouvez ajouter des instructions d'alerte un peu partout pour voir s'il se passe quelque chose (oui, c'est une mauvaise solution, mais chaque fois que vous n'utilisez pas un bon outil, vous avez une mauvaise solution).

Assurez-vous également que la fonction OnClick() renvoie une valeur fausse, afin d'empêcher le navigateur de recharger la page.

<a href="#" OnClick="GetEmployee()">link</a>

devient

<a href="#" OnClick="GetEmployee(); return false;">link</a>

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X