我正在尝试让javascript运行一些PHP代码,然后从页面上的PHP代码打印结果。我找到了一些使用ajax执行此操作的代码,并将PHP代码放在外部文件中。我发现的代码似乎在" alert"中运行PHP代码。对话框,我无法弄清楚如何让它只显示当前页面上的PHP输出。
我是新手,所以学习,成功"功能有警报(响应),所以我知道它为什么要做警报;但我试图让它在页面上打印而不能让它做到这一点......
这是我的JS与ajax:
<script type="text/javascript">
var answer = "gman wants a function to run php";
$.ajax({
type: 'GET',
url: 'http://jba.gtdsites.com/script.php',
data: 'answer=' + answer,
success: function(response) {
alert(response);
}
});
</script>
这是外部PHP文件(script.php):
<?php
if (!empty($_SERVER['HTTP_X_REQUESTED_WITH'])
&& strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest'
) {
// AJAX request
$answer = $_GET['answer'];
echo "answer is: " . $answer;
?>
<br/>
<?php
echo "<br/>this is working.";
// ...
}
?>
我一直在阅读很多想要解决这个问题,但没有连接点而没有到达任何地方;所以我想知道是否有人可以告诉我如何让它只是输出页面上的PHP内容而不是做警报?
非常感谢...
答案 0 :(得分:2)
如果您的文档中包含id,其中包含id&#39; ajax_content&#39;只需替换
alert(response);
带
$('#ajax_content').html(response);
答案 1 :(得分:0)
您可以在所需的html元素中追加/替换ajax响应。就像你要打印的html元素是:
<div id="div-to-print-ajax-response"></div>
然后你的JS函数会是这样的:
<script type="text/javascript">
var answer = "gman wants a function to run php";
$.ajax({
type: 'GET',
url: 'http://jba.gtdsites.com/script.php',
data: 'answer=' + answer,
success: function(response) {
$('div-to-print-ajax-response').html(response);
}
});
</script>