我在codeigniter中使用了对php函数的ajax调用。获得结果后,我需要在同一页面的弹出窗口中显示。现在我无法显示数组中的内容。下面是我的codeigniter控制器功能。我不认为我的代码是正确的。
public function print_details1() {
$this->isLoggedIn();
$id = $_POST['id'];
$response = $data['notifications'] = $this->file_model->print_view_detail($id);
echo json_encode($response);
}
ajax请求就是这个
$.ajax({
url: "" + baseurl + "/file/print_details1",
async: false,
type: "POST",
dataType: "html",
cache: false,
data: {id: getvalue},
success: function(response) {
$('#myModal2').modal('show');
}
});
我的弹出式ID是myModal2。我在弹出窗口中给出了以下代码。
<?php
foreach ($response as $notification) {
echo $notification->publication_name;
} ?>
现在使用firebug检查时出错。 &#34;未定义的变量:响应&#34;和#34;为foreach()提供的参数无效&#34; 这有什么问题?
答案 0 :(得分:0)
您正在混合使用PHP和HTML / jQuery。 下面是一些伪代码,向您展示如何执行此操作的正确流程。
让我们说你的模态有一个像这样的id的div:
<div id="#content"></div>
现在在你的ajax success()
函数中,你要遍历并迭代到#content
.success(function(response){
$.each(response, function(i, item){
$('#content').append(item);
});
$('#myModal2').modal('show');
});
<强>记住强> 上面是伪代码,你必须自己解决这些问题,但这会向你展示你应该如何解决它的一般流程: - )