我刚刚问了一个关于如何在不刷新页面的情况下刷新元素的问题。我已经学习 ajax 几个小时了,但我在实现任何内容时遇到了麻烦。
所以我想做的是:
刷新一个主要包含 sql 执行的表,我需要输入值。
为了更新它,我使用onkeyup="Search();"
然后将我的值转发到另一个 php 页面。
<input type="text" id="IDsearch" onkeyup="Search()" autofocus>
我知道我可以在 php 页面上获得这个值,如下所示:
<script type="text/javascript">
function Search() {
var inputValue = $('#IDsearch').val();
$.post('testAjaxJquery.php', {postname: inputValue},
function (data) {
$('#IDsearch').val(data)
});
}
</script>
和 PHP ( testAjaxJquery.php
)
<?php
$searchValue = $_POST['postname'];
echo $searchValue;
?>
这里的问题是:我不知道如何使用检索到的值并使用它更新我的现有表,而无需刷新页面。我尝试将所有代码放入一个新的 php 文件中并使用 $("#refreshOnSearch").load("refresh.php");
,没有运气。
本质是:一旦输入了一个字母,我就需要更新版本的表格。
我想你可以说我正在尝试复制 https://datatables.net/index。
从查看您的$.post function
内部开始。
然后使用console.log(data)
或debugger
检查data
并查看数据是什么。数据可能是一个对象,并且您正在尝试将#IDsearch
设置为对象而不是string
或int
。
如果是这种情况,您将需要执行类似$('#IDsearch').val(data.response);