我在PHP代码中有一个名为$final_value
的变量。我试图使用$.ajax
将其传递到jQuery文件中,但我无法这样做。任何帮助将不胜感激。
HTML(test.php)
<body>
<h1>Test</h1>
<p class="result">
<?php
$final_value = 27.00;
echo '<strong>'.$final_value.'</strong>';
echo json_encode($final_value);
?>
</p>
<p id="test"></p>
</body>
的jQuery
$(document).ready(function(){
createValue();
function createValue(){
$.ajax({
url: 'http://localhost/test.php',
method: 'post',
dataType: 'json',
success: function(output){
$('#test').append(output);
},
error: function(){
alert('error');
}
});
}
});
答案 0 :(得分:1)
您的PHP脚本返回HTML,而不是JSON。所以在AJAX调用中使用dataType: 'html'
。但是你不应该在HTML周围<body>
- 它将被插入到已经在正文中的DIV中,并且你不能在同一个文档中有多个<body>
标记。
你可以在PHP中删除echo json_encode($final_value);
,这是不需要的。
或者更改PHP以便只回应JSON - 摆脱它周围的所有HTML。然后你的jQuery代码需要将响应包装成HTML并将其添加到DOM:
$.ajax({
url: 'http://localhost/test.php',
method: 'post',
dataType: 'json',
success: function(output){
$('#test').append("<strong>" + output + "</strong>");
},
error: function(){
alert('error');
}
});