我试图从一些自动生成的div(使用php)中获取内容,并将内容放在php文件中进行进一步处理。原因是我有计数器来计算每个div中的点击次数。现在,我遇到了一个问题。当我从php文件回显数据时,进行了调用,但在头文件的表单数据部分中没有定义,如果执行var_dump($_POST)则为NULL。我几乎可以肯定,我在AJAX调用中做错了什么。至少在AJAX或Javascript方面我是没有经验的。什么好主意吗?代码粘贴在下面。谢谢你的帮助/建议。AJAX:
$(document).ready(function(e) {
$("form[ajax=true]").submit(function(e) {
e.preventDefault();
var form_data = $(this).find(".test");
var form_url = $(this).attr("action");
var form_method = $(this).attr("method").toUpperCase();
$.ajax({
url: form_url,
type: form_method,
data: form_data,
cache: false,
success: function(returnhtml){
$("#resultcart").html(returnhtml);
}
});
});
});
PHP是一个简单的回显。请建议。
假设你有一个div
<div id="send_me">
<div class="sub-item">Hello, please send me via ajax</div>
<span class="sub-item">Hello, please send me also via ajax</span>
</div>
发出类似
的AJAX请求$.ajax({
url: 'get_sorted_content.php',
type: 'POST', // GET is default
data: {
yourData: $('#send_me').html()
// in PHP, use $_POST['yourData']
},
success: function(msg) {
alert('Data returned from PHP: ' + msg);
},
error: function(msg) {
alert('AJAX request failed!' + msg);
}
});
现在在PHP中,您可以通过以下方式访问传递的数据
<?php
// get_sorted_content.php
if(!empty($_POST['yourdata']))
echo 'data received!';
else
echo 'no data received!';
?>
已排序。谢谢大家。问题是我没有尊重div的父->子模式。我所需要做的就是将所有内容包装到另一个div中。我真的不知道发生了什么,因为我正在从PHP中返回HTML代码。