我正在通过$ .ajax方法从test.php向ajax.php页面发送请求。控制台显示“200 ok”表示请求正常。但是什么都不返回,虽然控制台没有显示任何错误。 我用过的页面如下:
test.php的
<div id="return-data">
<ul class="return-lists">
</ul>
</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<script>
$('.submit-form').click(function() {
var name = "tanvir";
var address = "Dhaka";
var cData = "name=" + encodeURIComponent(name) + "&address=" + encodeURIComponent(address);
$.ajax({
url: "ajax.php",
type: "POST",
data: cData,
success: function(data)
{
alert(data);
$('#return-data .return-lists').append(data);
}
});
});
</script>
和ajax.php
<?php
if( isset($_POST['name']) ) {
$name = $_POST['name'];
$address = $_POST['address'];
$lists = '';
$lists .= '<li>' . $name . '</li>';
$lists .= '<li>' . $address . '</li>';
return $lists;
exit;
}
我也试过删除if( isset($_POST['name']) ) {}
并在ajax.php中使用echo而不是return
答案 0 :(得分:1)
试试这个。更改echo $ list的返回$ list,不需要在ajax.php
的末尾使用exit <?php
if( isset($_POST['name']) ) {
$name = $_POST['name'];
$address = $_POST['address'];
$lists = '';
$lists .= '<li>' . $name . '</li>';
$lists .= '<li>' . $address . '</li>';
echo $lists;
}
答案 1 :(得分:0)
是的,我通过正常输入“echo”而不是“return”解决了这个问题。因为“return”返回一个字符串并且echo打印一个字符串。谢谢大家。