我的模型返回了这样一个对象:
MODEL
public function getAllNama() {
$this->db->select('nama');
$query = $this->db->get('tbl_user');
return $query->result();
}
控制器
$data['users'] = $this->model_user->getAllNama();
$this->load->view('it_team/view_manual_entry', $data);
在视图中,我在html上操作它有一个问题。 就我而言,我使用像这样的基于自动完成的jquery
<input id="data_user"type="text" data-provide="typeahead" data-items="4"
data-source='[<?= ?>]'
">
在属性data-source
中,字符串格式如下:data-source="["nama1", "nama2"]"
所以,基于此,
foreach(users as user){
echo $user->nama;
}
是print user1user2,如何在具有合适字符串格式的数据源上传递它?
我知道内爆,但我尝试了很多方法,但仍然没有成功。它如此欣赏任何解决方案.. 感谢
答案 0 :(得分:0)
试试这个:
<?php
$names = '';
foreach($users as $user){
$names .= '"'.$user->nama.'",';
}
$names = trim($names, ','); ?>
<input id="data_user"type="text" data-provide="typeahead" data-items="4"
data-source='[<?php echo $names;?>]'>
答案 1 :(得分:0)
不需要所有这些,您只需要在控制器中清理它,按照您的提及使用implode
,然后将其发送到您的视图:
<强>控制器:强>
public function getNamas(){
$namas = $this->my_model->getAllNama();
foreach ($namas as &$nama) {
$nama = "'$nama->nama'";
}
$data['users'] = implode(",", $namas);
$this->load->view('it_team/view_manual_entry', $data);
}
查看:强>
<input id="data_user"
type="text"
data-provide="typeahead"
data-items="4"
data-source="[<?= $users ?>]"
>