У меня есть два файла php, test.php и test2.php
в 'test.php' У меня есть форма, и я хочу получить имя и эхо его с помощью ajax и php вот мой код, что с ним не так?php/ajax: form get method не работает
test.php
<html>
<head>
<script>
function showHint(str)
{
if (str.length==0)
{
document.getElementById("txtHint").innerHTML="";
return;
}
var xmlhttp=new XMLHttpRequest();
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("txtHint").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","test2.php?q="+str,true);
xmlhttp.send();
}
</script>
</head>
<body>
<p><b>Start typing a name in the input field below:</b></p>
<form method="get">
First name: <input type="text" name="fname">
<input type="submit" value="click me" onclick="showHint(fname)">
</form>
<p>Suggestions: <span id="txtHint"></span></p>
</body>
</html>
и test2.php является
<?php
$q = intval($_GET['q']);
echo $q;
?>
вы должны сказать нам, что случилось с ним, какие ошибки вы получаете или то, что происходит против того, что вы ожидаете, чтобы это произошло, и какой шаг устранения неполадок вы застряли. –
нет ошибки, просто не работает, я имею в виду, когда я нажимаю на кнопку, в теге не будет изменений. –
Потому что вы не возвращаете никаких параметров через url. Вы просто печатаете значение $ q. Вы можете использовать это значение для успеха, но вместо получения URL-адреса с .open(). Найдено. Проверьте эту ссылку. Это может помочь вам. http://stackoverflow.com/questions/4971254/javascript-xmlhttprequest-open-php-file-and-execute-more-javascript – MentalRay