【发布时间】:2013-12-06 09:24:08
【问题描述】:
我再次在这里征求您的建议。我有一些 AJAX 调用要求从我的编辑器运行代码,这是一个 PHP 在线编辑器。 (你们可以签到my site。)
我有一些 ajax 调用来发送编辑器的数据和接收的输出。
问题:for 循环没有正确执行。
-
下面的for循环程序执行成功
<?php for($i=10;$i>1;$i--){ echo "$i<br>"; } ?> -
虽然这个for循环没有执行
<?php for ($x=0; $x<=10; $x++) { echo "The number is: $x <br>"; } ?>
当我通过 FireBug 运行它时,我得到一个响应,说 for 循环在第二个循环(上图)的情况下变成了一个无限循环。
现在这是我的 AJAX 回调:
$.ajax({
type: 'GET',
url: 'exec.php',
data: code,
success: function(data)
{
alert(data);
$(loader).addClass("hidden");
var stdout = $(form).children('.stdout');
if (data.search("Parse error")>0)
{
var str = data.replace("<b>Parse error</b>: ","");
$(stdout).html(str);
$(stdout).removeClass('hidden');
}
else
{
$(stdout).html(data);
$(stdout).removeClass('hidden');
}
},
error: function(req, status, err) {
alert(status);
alert(err);
},
dataType: 'JSONP'
});
我已经在本地重新实现了这个编辑器并运行它;在 FireBug 中我收到此错误:
错误:没有调用 jQuery110106354119750428449_1386321122498
这是来自服务器的 JSON 回调代码:
echo $_GET['callback']."(".json_encode($script_output).");";
请帮我解决这个错误。
【问题讨论】:
-
我严重怀疑你是在用 Firebug 调试 PHP。当您将 PHP 和 Javascript 混合在一起时,您要实现的目标非常不清楚 2
-
你为什么要设置
dataType:'JSONP'? -
你的意思是两个for循环吗?如果是,那么请先访问 web.guru99.com 你可以看到我正在实现 php 代码编辑器。所以php代码根本不用关心,而且
-
实际上所有代码都在运行,唯一的问题是for循环。你可以在这里查看 - web.guru99.com。只有这个 for 循环没有运行,所以我不确定是什么问题,但是 ajax 调用的错误显示了这个错误:jQuery110106354119750428449_1386321122498 没有被调用
-
在我看来,codeguru 网站的 PHP 解释器存在错误,该循环应该没有问题
标签: javascript php jquery ajax callback