Javascript 在ajax中使用success函数以模式显示阵列数据
我在控制器中有一个函数,它将返回一个包含数据库数据的数组,该数据将作为json文件发送到我的success函数, 我想在我的模式中的div中显示这些信息,但我不能这样做,因此这里是我的控制器功能:Javascript 在ajax中使用success函数以模式显示阵列数据,javascript,ajax,twitter-bootstrap-3,codeigniter-3,Javascript,Ajax,Twitter Bootstrap 3,Codeigniter 3,我在控制器中有一个函数,它将返回一个包含数据库数据的数组,该数据将作为json文件发送到我的success函数, 我想在我的模式中的div中显示这些信息,但我不能这样做,因此这里是我的控制器功能: public function list_salle($id) { $data= $this->salle_model->get_all_salle($id); $this->output->set_output(json_encode($data));
public function list_salle($id)
{
$data= $this->salle_model->get_all_salle($id);
$this->output->set_output(json_encode($data));
}
下面是我的js函数及其ajax:
function consulter_salle(id)
{
$.ajax({
url : "<?php echo site_url('index.php/batiment/list_salle')?>/"+id,
type: "POST",
dataType: "JSON",
success: function(data)
{
var table_header = "<table class='table table-striped table-bordered'><thead><tr><td>head_x</td><td>head_y</td></tr></thead><tbody>";
var table_footer = "</tbody></table>";
var html ="";
for (row in data)
{
html += "<tr><td>"+data.id +"</td><td>"+data.libelle+"</td></tr>";
}
var all = table_header +html+ table_footer;
// show bootstrap modal when complete loaded
$('.modal-title').text('Test');
$('#salle_list').html(all);
$('#modal_list').modal('show');
},
error: function (jqXHR, textStatus, errorThrown)
{
alert('Error displaying data');
}
});
}
功能顾问(id)
{
$.ajax({
url:“/”+id,
类型:“POST”,
数据类型:“JSON”,
成功:功能(数据)
{
var table_header=“head_xhead_y”;
var表_footer=“”;
var html=“”;
用于(数据中的行)
{
html+=“”+data.id+“”+data.libelle+“”;
}
var all=表格页眉+html+表格页脚;
//完全加载时显示引导模式
$('.modal title').text('Test');
$('salle_list').html(全部);
$('modal#u list')。modal('show');
},
错误:函数(jqXHR、textStatus、errorshown)
{
警报(“显示数据时出错”);
}
});
}
这是我的语气:
<div class="modal fade" id="modal_list" role="dialog">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
<h3 class="modal-title">Liste des salles</h3>
</div>
<div class="modal-body form">
<form action="#" id="form" class="form-horizontal">
<div class="form-body">
<div id="salle_list"></div>
</div>
</form>
<div class="modal-footer">
<button type="button" id="btnSave" onclick="save()" class="btn btn-primary">Save</button>
<button type="button" class="btn btn-danger" data-dismiss="modal">Cancel</button>
</div>
</div><!-- /.modal-content -->
</div><!-- /.modal-dialog -->
</div>
</div>
&时代;
沙利斯酒店
拯救
取消
因此,数据作为json文件正确发送,但我无法显示它,我认为循环和.html函数中存在问题,请帮助
谢谢大家! ajax中的for循环看起来应该是foreach,但即便如此,它也是错误的。当您在一个json对象上进行迭代时,如果您想要一些关于如何进行迭代的替代方法,请查看以下问题:。有一个答案给出了这样一个循环:
$(jQuery.parseJSON(JSON.stringify(data))).each(function() {
html += "<tr><td>"+this.id +"</td><td>"+this.libelle+"</td></tr>";
}
$(jQuery.parseJSON(JSON.stringify(data)).each(function(){
html+=“”+this.id+“”+this.libelle+“”;
}
我找到了一个解决方案:
success: function(data)
{
var table_header = "<table class='table table-striped table-bordered'><thead><tr><td>Identifiant</td><td>Libelle</td></tr></thead><tbody>";
var table_footer = "</tbody></table>";
var html ="";
data.forEach(function(element) {
html += "<tr><td>"+element.id +"</td><td>"+element.libelle+"</td></tr>";
});
var all = table_header +html+ table_footer;
$('.modal-title').text('Liste des salles');
$('#salle_list').html(all);
$('#modal_list').modal('show');
}
成功:函数(数据)
{
var table_header=“IdentifiantLibelle”;
var表_footer=“”;
var html=“”;
data.forEach(函数(元素){
html+=“”+element.id+“”+element.libelle+“”;
});
var all=表格页眉+html+表格页脚;
$('.modal title').text('Liste des salles');
$('salle_list').html(全部);
$('modal#u list')。modal('show');
}
data是什么样子的?你能发布这个样本吗?[{“id”:“1”,“libelle”:“45”,“id_bat”:“1”}]那么??有什么建议吗?