我试图实时获取html文本输入中的值(不提交表单)并将其存储在PHP变量中。我在同一个php文件(home.php)中做了所有这些。该脚本不会返回任何错误。但是,当我尝试通过全局POST数组访问该值时,我收到一条错误,指出索引'查询'未定义。
非常感谢任何帮助。
<script>
function getQuery(){
$('#query').change(function(){
$.ajax({
type: "POST",
url: "home.php",
data: {query:$(this).val()}
});
});
}
}
</script>
<input name='searchBar' type='text' onChange='getQuery();' size='100' id='query'></input>
<?php
$x = $_POST['query'];
echo $x;
?>
答案 0 :(得分:1)
<强> 已更新 强>
home.php
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script>
$(document).ready(function(){
$("#query").on('keyup', function(){
$.ajax({
type: 'POST',
url: 'search.php',
data: {query:$(this).val()},
success: function(data) {
$("#display").html(data);
}
});
});
});
</script>
<input id="query" name="query" type="text" size="100"></input>
<div id="display"></div>
的search.php
<?php
$x = $_POST['query'];
echo 'You made it to your search page. x = ' . $x;
?>