jquery将数据发布到php脚本并立即显示在同一个php脚本文件中
如何使用ajax将数据发布到php脚本(showitemid.php)并立即在超链接上的厚箱中打开相同的脚本(showitemid.php)并显示发布的数据。 以下是我的代码:
postitemid.php
该文件包含多个复选框。 用户将勾选复选框并单击超链接。 单击超链接时,所有选中的复选框值将发布到showitemid.php,然后立即showitemid.php将在厚箱中打开并显示接收的值。 但是我的代码中没有收到任何值? 需要帮忙。
$('#showitem).click(function() { var data = $('input:checkbox:checked').map(function() { return this.value; }).get(); $.ajax({type: 'POST', url: 'showitemid.php', data: data,success: success,dataType: dataType}); });
showitemid.php
$data = ''; if (isset($_POST['data'])) { $data = $_POST['data']; } elseif (isset($_GET['data'])) { $data = $_GET['data']; } echo 'd='.$data;
使用这样的东西
$('#showthickbox').click(function() { var data = $('input:checkbox:checked').map(function() { return this.value; }).get();//your code $.post("showitemid.php",{data:data},function(data){ $("#thickbox").html(data); }) }) })
在你的showitemid.php
echo "your data";
原始代码的主要问题是发送的数据没有匹配$_POST['data'])
键命名data
$_POST['data'])
因此$_POST['data'])
为空。 您必须发送键/值对,您只发送没有键的值。 由于您经常使用相同的变量名,因此您可能会感到有些困惑
var dataArray = $('input:checkbox:checked').map(function() { return this.value; }).get(); var dataToServer= { data : dataArray} /* now have the key to match $_REQUEST in php */
现在可以使用AJAX速记方法load()
来填充内容
$('#myContainer').load( "yourfile.php", dataToServer, function(){ /* new html exists run open thickbox code here*/ })