Javascript 使用数据库中的值循环选项元素

Javascript 使用数据库中的值循环选项元素,javascript,php,jquery,codeigniter,Javascript,Php,Jquery,Codeigniter,首先,这是我的代码: 视图: function admin_add_menu(e) { $.ajax({ url: "<?php echo site_url('vendors/ajax_admin_menu/')?>", type: 'POST', dataType: 'JSON', data: {id: e}, success:function (data) {

首先,这是我的代码:

视图:

function admin_add_menu(e)
{   
    $.ajax({
        url: "<?php echo site_url('vendors/ajax_admin_menu/')?>",
        type: 'POST',
        dataType: 'JSON',
        data: {id: e},
        success:function  (data) {
            $("#kategori_admin").html("<option>" + data[0]['nama'] + "</option>")
        }
    });


}
public function ajax_admin_menu()
{   
    $ido = $this->input->post('id');
    $data = $this->person->get_adminby_id($ido);
    echo json_encode($data);
}
      public function get_adminby_id($id)
    {   
        $this->db->select('parentID,nama');
        $this->db->from('parentMenu');
        $this->db->where('outletID',$id);
        $query = $this->db->get();
        return $query->result();
    }
型号:

function admin_add_menu(e)
{   
    $.ajax({
        url: "<?php echo site_url('vendors/ajax_admin_menu/')?>",
        type: 'POST',
        dataType: 'JSON',
        data: {id: e},
        success:function  (data) {
            $("#kategori_admin").html("<option>" + data[0]['nama'] + "</option>")
        }
    });


}
public function ajax_admin_menu()
{   
    $ido = $this->input->post('id');
    $data = $this->person->get_adminby_id($ido);
    echo json_encode($data);
}
      public function get_adminby_id($id)
    {   
        $this->db->select('parentID,nama');
        $this->db->from('parentMenu');
        $this->db->where('outletID',$id);
        $query = $this->db->get();
        return $query->result();
    }

我有web dashboard,我尝试使用jQueryAjax获取数据,结果得到json格式的数组数据,举个例子,我想将值与选项结合起来,将其附加到select中,然后循环它(如果有多个类似数组的数据),抱歉,如果这是一个愚蠢的问题,但是,这可能吗

您可以使用

var data=jQuery.parseJSON(data);
$("#kategori_admin").html("<option>" + data.name + "</option>");
var data=jQuery.parseJSON(数据);
$(“#kategori_admin”).html(“+data.name+”);

如果有效,请尝试。

您可以使用

var data=jQuery.parseJSON(data);
$("#kategori_admin").html("<option>" + data.name + "</option>");
var data=jQuery.parseJSON(数据);
$(“#kategori_admin”).html(“+data.name+”);

如果可行,请尝试。

在您的模型中,只需更改一行即可

public function get_adminby_id($id)
{   
    $this->db->select('parentID,nama');
    $this->db->from('parentMenu');
    $this->db->where('outletID',$id);
    $query = $this->db->get();
    return $query->result_array();
}
管理控制器中像这样更改代码

public function ajax_admin_menu()
{   
    $data = $this->person->get_adminby_id($ido);
    $option = "";
    if($data != array()){

        foreach ($data as $key => $value) {
            $option .= "<option value='".$value['parentID']."'>".$value['nama']."</option>"; 
        }

    }
    echo $option; exit;
}
public function ajax\u admin\u menu()
{   
$data=$this->person->get\u adminby\u id($ido);
$option=“”;
如果($data!=array()){
foreach($key=>$value形式的数据){
$option.=''.$value['nama'].'';
}
}
echo$选项;退出;
}
视图中文件

function admin_add_menu(e)
{   
    $.ajax({
        url: "<?php echo site_url('vendors/ajax_admin_menu/')?>",
        type: 'POST',
        dataType : 'html',
        data: {id: e},
        success:function  (data) {
            $("#kategori_admin").html(data);
        }
    });

}
功能管理添加菜单(e)
{   
$.ajax({
url:“”,
键入:“POST”,
数据类型:“html”,
数据:{id:e},
成功:功能(数据){
$(“#kategori_admin”).html(数据);
}
});
}

在您的型号中只更改一行

public function get_adminby_id($id)
{   
    $this->db->select('parentID,nama');
    $this->db->from('parentMenu');
    $this->db->where('outletID',$id);
    $query = $this->db->get();
    return $query->result_array();
}
管理控制器中像这样更改代码

public function ajax_admin_menu()
{   
    $data = $this->person->get_adminby_id($ido);
    $option = "";
    if($data != array()){

        foreach ($data as $key => $value) {
            $option .= "<option value='".$value['parentID']."'>".$value['nama']."</option>"; 
        }

    }
    echo $option; exit;
}
public function ajax\u admin\u menu()
{   
$data=$this->person->get\u adminby\u id($ido);
$option=“”;
如果($data!=array()){
foreach($key=>$value形式的数据){
$option.=''.$value['nama'].'';
}
}
echo$选项;退出;
}
视图中文件

function admin_add_menu(e)
{   
    $.ajax({
        url: "<?php echo site_url('vendors/ajax_admin_menu/')?>",
        type: 'POST',
        dataType : 'html',
        data: {id: e},
        success:function  (data) {
            $("#kategori_admin").html(data);
        }
    });

}
功能管理添加菜单(e)
{   
$.ajax({
url:“”,
键入:“POST”,
数据类型:“html”,
数据:{id:e},
成功:功能(数据){
$(“#kategori_admin”).html(数据);
}
});
}

为什么不试试这个

$ido = $this->input->post('id');
$data = $this->person->get_adminby_id($ido);
foreach($data as $row){
    echo $option .= "<option>".$row[0]->nama."</option>";
}

希望您能从中得到帮助。

为什么不试试这个

$ido = $this->input->post('id');
$data = $this->person->get_adminby_id($ido);
foreach($data as $row){
    echo $option .= "<option>".$row[0]->nama."</option>";
}

希望你能从中得到帮助。

谢谢你的回复,但是你能详细解释一下吗,因为我是这样尝试的:var parsed=jQuery.parseJSON(data);并尝试在控制台中运行它,结果是errorhave您检查了控制台中的响应。转到网络并检查响应的格式。是的,但即使在我触发它时,也会出现错误,因此我遵循naim代码,但非常感谢您的帮助谢谢您的回复,但您能否详细解释一下,因为我是这样尝试的:var parsed=jQuery.parseJSON(data);并尝试在控制台中运行它,结果是errorhave您检查了控制台中的响应。进入网络,检查响应的格式。是的,但即使我触发了它,也会出现错误,所以我遵循naim代码,但真的非常感谢您的帮助。您有任何错误吗?您有任何错误吗?哇,非常感谢您,它很有效,首先我有点困惑,但后来证明它确实有效!哇,非常感谢你,它很管用,起初我有点困惑,但后来证明它真的管用!是的,一开始我有点困惑,但后来我明白我必须在控件中迭代该选项,而不是在视图中,真的,谢谢你的帮助!是的,一开始我有点困惑,但后来我明白我必须在控件中迭代该选项,而不是在视图中,真的,谢谢你的帮助!