我的项目中有一些模板文件,例如包含这些简单数据的“/view/dynamic.html”:
<div class="dynamic"></div>
在客户端:我的网页上有一个可点击的元素,使用 Jquery 将异步请求发送到服务器端。
$('a.clickable').on('click', function()
{
var $this = $(this);
var $type = $this.data('type');
var $project_id = 1;
$.ajax({
type: 'POST',
url: "php/zeek.php",
data: {
'method': 'clicked',
'type': $type,
'project_id': $project_id
},
dataType: 'text',
success: function($input)
{
console.log('result:' + $input);
},
error: function($request, $status, $error)
{
$('div.dynamic').replaceWith(
'<div class="dynamic"><h2>'
+ $error + '</h2></div>');
console.log($status + ' : ' + $error);
}
});
});
在服务器端: 我有一个显示动态 View 文件内容的函数。
public function dynamic_display() {
ob_start();
include 'view/dynamic.html';
return ob_get_clean();
}
最后我有了接收请求的函数:
case 'clicked':
$type = strtolower($params['type']);
if ($type == 'disconnect') {
echo("? " . $this->dynamic_display() . " ?");
return true;
}
问题:
当我使用单元测试测试函数“dynamic_display”时,该函数发送回正确的预期字符串。使用 var_dump,我得到:
string(28) "<div class="dynamic"></div>
"
当我单击页面上的元素时:我在控制台上没有获得相同的结果
"result:? ?"
为什么不起作用?怎么了?应该如何让它发挥作用?
感谢和问候! 狮子座
最佳答案
当我使用时它确实有效
include '/home/leo/zeek/view/dynamic.html';
而不是
include 'view/dynamic.html';
我真的很惊讶?有人可以解释一下吗?
关于javascript - Jquery 和 PHP : obtaining no result on jquery using ob_get_clean,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24924859/