我有一张桌子(我使用的是用于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>
这是在customer_details.php文件中
<div>Company name</div>
<div>
<?php
$name = $_POST['name1'];
echo "$name";
?>
</div>
当我点击一行时,我被重定向到客户详细信息页面,但我看不到数据(即名称)。当我在Firebug中查看控制台中的响应选项卡时,我可以在div中看到这些数据 谁能帮助我,我做错了什么?
答案 0 :(得分:1)
AJAX用于将数据导入已加载的页面,而无需重新加载。
当前代码的作用是,首先,它向gem 'net-ssh'
页面发送ajax POST请求。这个ajax请求的作用是使用XMLHttpRequest对象从POST请求中获取结果
(你可以在这里阅读:http://www.w3schools.com/ajax/ajax_xmlhttprequest_send.asp)
然后,您将浏览器重定向到该页面。
您要做的是使用表单发送POST请求 (这个问题很好地解释了你将如何实现它:JavaScript post request like a form submit)