我有以下一段 JavaScript 代码在我的 WordPress 网站上运行:
var PostData = "Action=refresh-cart";
jQuery.ajax({
dataType: "text",
type: 'POST',
url : location.href,
cache: false,
data : PostData,
complete : function() { },
success: function(data) {
// jQuery("#loading-img").hide();
// jQuery("#join-class-div-3").html(data);
}
});
PHP 是:
<?php
if(isset($_POST['Action'])) {
$Action = $_POST['Action'];
if($Action == "refresh-cart") {
echo '<div id="stuff"><p> done LOL </p></div>';
}
}
?>
所以我希望被退回:
<div id="stuff"><p> done LOL </p></div>
但是我却收到了整个 html 页面!?为什么!?
最佳答案
它将返回在您的网址“location.href”处呈现的页面中的所有内容
尝试在您的 php 代码中添加 exit()
以在 echo 后停止它。
<?php
if(isset($_POST['Action'])) {
$Action = $_POST['Action'];
if($Action == "refresh-cart") {
echo '<div id="stuff"><p> done LOL </p></div>';
exit;
}
}
?>
<div>html content here will not be displayed</div>
关于javascript - Wordpress ajax 调用返回整个 html 页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26999651/