繁体   English   中英

使用Codeigniter选择的显示选项

[英]Display option selected with codeigniter

我想询问我的代码选项是否已在页面注册器中选择了2个表格

table prodi
+-------------+-------------+------+-----+---------+-------+
| Field       | Type        | Null | Key | Default | Extra |
+-------------+-------------+------+-----+---------+-------+
| id_prodi    | varchar(3)  | NO   | PRI | NULL    |       |
| nama_prodi  | varchar(30) | NO   |     | NULL    |       |
| id_fakultas | varchar(3)  | NO   | MUL | NULL    |       |
| id          | int(2)      | NO   | MUL | NULL    |       |
+-------------+-------------+------+-----+---------+-------+

table jurusan
+---------------+-------------+------+-----+---------+-------+
| Field         | Type        | Null | Key | Default | Extra |
+---------------+-------------+------+-----+---------+-------+
| id_fakultas   | varchar(3)  | NO   | PRI | NULL    |       |
| nama_fakultas | varchar(40) | NO   |     | NULL    |       |
+---------------+-------------+------+-----+---------+-------+

这是视图:

 <label for="fakultas">Fakultas : </label>
  <select id="fakultas" name="fakultas_user"  onChange="fakultas">

    <?php 
      foreach ($qfakultas as $fakultas) {
        echo "<option value=".$fakultas->kd_fakultas.">".$fakultas->nama_fakultas."</option>";    
      }
    ?>    
  </select>

  <hr>

  <label for="jurusan">Jurusan  : </label>
  <select id="jurusan" name="jurusan_user" onChange="jurusan">
    <?php 
      foreach ($qprodi as $prodi) {
        echo "<option value=".$prodi->kd_prodi.">".$prodi->nama_prodi."</option>";    
      }
    ?>  
  </select>

但我会根据“ id_fakultas”显示“ nama_prodi”

用选项值注册

当我单击“ nama_fakultas”然后基于“ id_fakultas”显示“ nama_prodi”时如何显示?

谢谢

下面是Ajax代码,我可以帮忙,只得到nama_prodi基于id_falkutas

您可以在项目中使用此代码,您需要做一些事情。
不只是复制代码。 仅几步
(ID Lang:Jangan dicopy mentah2,hanya beberapa langkah saja untuk编辑)。

  1. YOUR_URL_HERE更改为base_url()或为其创建var
  2. 更改nama_controller到您的控制器名称CI_Controller
  3. nama_fungsi更改为函数,以从模型(数据库)获取数据。
    示例: ambil_data_jurusan
  4. 删除您的onchange从视图中foreach - echo <option>onchange
  5. 将脚本添加到您的视图文件中或创建一个新的.js文件。
  6. 如果此代码对您有帮助,请帮助我将其标记为正确答案。 (tolong dibantu gan)

参见代码示例:

<script>
$("#falkutas").on('change', function() {
   $.ajax({
        type:"POST",
        url:'YOUR_URL_HERE/nama_controller/nama_fungsi',
        data:{"falkutas_user":falkutas_user,"csrf_token":$("input[name=csrf_token]").val()},
        dataType:'json',
        success: function(result) {
            for(var i=0; i<result.length; i++) {
                res += '<option value="'+result[i]['id_prodi']+'">'+result[i]['nama_prodi']+'</option>';
            }
            $(document).ready(function() {
                 $("#prodi").html(res);
            });
        },
        error: function(result) {
            $(document).ready(function() {
                $("#prodi").html(''); //empty select value
            });
        }
    });
}
</script>

然后,在您的功能代码中:

// Inside function ambil_data_jurusan(), harusnya sudah jalan kalau gini
$return = $this->model->get_jurusan($this->input->post('falkutas',TRUE));
if(count($return)>0) {
    echo json_encode($return);
}

在您看来,只需要选择空即可。

<select id="jurusan" name="jurusan_user">

</select>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM