我有一个表(我正在使用jQuery的DataTables插件),当我点击一行时,我想重定向到另一个页面,其中将显示客户详细信息.
这是我在customers.PHP文件中的代码:
<script>
$(document).ready(function () {
$('#customer').DataTable({
serverSide: true,
ajax: "customer-data.PHP",
scrollY: 350,
scrollX: true,
deferRender: true,
select:true,
scroller: {
loadingIndicator: true,
displayBuffer: 4,
serverWait: 100
}
});
var table = $('#customer').DataTable();
$('body').on('click', '#customer tbody tr', function () {
var name = table.cell('.selected', 1).data();
$.ajax({
type: "POST",
url: "customer_details.PHP",
data: {name1: name},
success: function() {
window.location = "customer_details.PHP";
}
});
});
});
</script>
<div>Company name</div>
<div>
<?PHP
$name = $_POST['name1'];
echo "$name";
?>
</div>
当我点击一行时,我被重定向到客户详细信息页面,但我看不到数据(即名称).当我在Firebug中查看控制台中的响应选项卡时,我可以在div中看到这些数据.
任何人都可以帮助我,我做错了什么?
解决方法:
AJAX用于将数据导入已加载的页面,而无需重新加载.
当前代码的作用是,首先,它将ajax POST请求发送到customer_details.PHP页面.这个ajax请求的作用是使用XMLHttpRequest对象从POST请求中获取结果.
(你可以在这里阅读:http://www.w3schools.com/ajax/ajax_xmlhttprequest_send.asp)
您要做的是使用表单发送POST请求.
(这个问题很好地解释了你将如何实现它:JavaScript post request like a form submit)