J'ai une forme simple:
<form id="formTest" name="formTest" action="" method="get">
<input id="txtPostcode" name="Postcode" type="text" class="txtBoxSmall" />
<input type="button" name="SubmitTheForm" id="btnSubmit" onClick="TestAjax()" value="submit" />
</form>
Poster PHP ne fonctionne pas avec l'Ajax
Mon code Javascript est:
function TestAjax(){
var xmlhttp;
if (window.XMLHttpRequest)
{
xmlhttp=new XMLHttpRequest();
}
else
{
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
}
};
xmlhttp.open("GET","autocomplete.php?value1=aaaaa&value2=fffff",true);
xmlhttp.send();
}
Mon problème est que dans le fichier php autocomplete.php je ne peux pas accéder à l'élément txtPostcode comme ça:
$postcodetext = $_GET[Postcode];
Mais si je me débarrasser de la fonction javascript sur le bouton Envoyer, et ajoutez action = « autocomplete.php » à la balise forme qu'elle fonctionnera, mais bien sûr, il n'ajaxed. Quelqu'un peut-il me dire pourquoi je ne peux pas obtenir des valeurs de $ _GET [Code postal] en ajaxing ?? Je sais que je peux juste passer la valeur du txtPostcode dans l'URL, mais je ne veux pas le faire de cette façon, y at-il quelque chose que je peux faire je peux accéder à la zone de texte via l'appel $ _GET [Postcode] en PHP? ?
Merci.
À l'avenir, il serait utile de formater votre code lorsque vous posez des questions/réponses/commentaires. Lisez l'aide ici: http://stackoverflow.com/editing-help. Notez que vous pouvez modifier vos posts au format après votre publication. –
Ce n'est pas un POST, c'est un GET. – NickFitz