CodeIgniter:尝试根据第一个选择选项的选择从数据库表中加载选项值

莎拉·马利克

我正在使用 CodeIgniter 并且有一个包含 2 个选择选项的表单。第一个选择选项是汽车制造,第二个选择选项是制造。如果我从 As 'BMW' 中选择 Car Make,则第二个选择选项中的值应更改并显示所有由 BMW 制造的车型。

**WelcometoDemoCar.php (View)**

*//to get the Car Make List Box*

<input type = "text" name = "car_list" list="car_dalalist" id = "car_list" class = "inktext inklarge" placeholder = "Type of Car" required = "" autocomplete="off" />
<datalist id="car_dalalist">
 <?php foreach($carlist as $row_carlist){?>
<?php //echo $row_carlist->Make . " " .$row_carlist->Model ." " .$row_carlist->Year ;?>
<option value="<?php echo $row_carlist->Make;?>"> <?php echo $row_carlist->Make;?></option>
<?php }?> 
</datalist>


*//to get the value in the Make Select List Box*


<input type = "text" name = "car_model" list="car_model_dalalist" id = "car_model" class = "inktext inklarge" placeholder = "Car Model" required = <datalist id="car_model_dalalist">
<?php foreach($carModel as $row_carModel){?>
<?php //echo $row_carlist->Make . " " .$row_carlist->Model ." " .$row_carlist->Year ;?>
<option value="<?php echo $row_carModel->Model;?>"><?php echo $row_carModel->Model;?> </option>
<?php }?> 
</datalist> 


**Welcome.php (Controller)**

$this->data['carlist'] = $this->PostModel->getCarDetails(); 
$this->data['carModel'] = $this->PostModel->getCarModel();

**PostModel.php (Model)**



*//to get car make*

 function getCarDetails(){
  $this->db->Distinct();
  $this->db->select("Make"); 
  $this->db->from('carlist');
  $carListquery = $this->db->get();
  return $carListquery->result();
 }


 *// to get car model*


 function getCarModel(){
  $make = $this->input->post('car_list');   

  $this->db->Distinct();
  $this->db->select("Model"); 
  $this->db->from('carlist');
  $this->db->where('Make' . $make);
  $carmodelquery = $this->db->get();
  return $carmodelquery->result();
 }


public function get_data()
 {
      $value = $this->input->post("value");
      $data = $this->PostModel->get_data($value);
      $option ="";
      foreach($data as $d)
      {
         $option .= "<option value='".$d->id."' >".$d->Model."</option>";
      }
       echo $option;
 }

我尝试使用 ajax 在各种网站上发布的几个解决方案,但我认为我的值没有发布到控制器。

阿贾克斯代码

    $("#car_list").on("change",function(){ 
    var value = $(this).val(); 
    $.ajax({ url : "welcome/get_data", 
    type: "post", 
    data: {"value":'value'}, 

    success : function(data){ 
    $("#car_model").html(data); 
    }, 
   });
  });

非常感谢您的时间和帮助。

预先感谢。

95faf8e76605e973

有几个关于代码的问题。
供将来参考:请参阅对 OP 帖子的评论

主要问题是点击处理程序:

    $("#car_list").on("change",function(){ 
     var value = $(this).val(); 
     $.ajax({ url : "welcome/get_data", 
     type: "post", 
     data: {"value":value}, //OP originally used single quotes on the value therefore passing a string instead of the actualy variable

     success : function(data){ 
     $("#car_model").html(data); 
     }, 
     });
     });

控制器和模型的问题

 public function get_data()
 {
      $data = $this->PostModel->get_data(); //OP originally passed $value to the model but $value does not exist
      $option ="";

      if(count($data) > 0){
          foreach($data as $d)
          {
             $option .= "<option value='".$d->Model."' >".$d->Model."</option>";
          }
          echo $option;
      }

 }

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

根据动态表中的另一个选择选项选择选项值

来自分类Dev

如何根据第一个选择选项显示第二个选择选项

来自分类Dev

选择了第一个选择选项后的HTML选择选项显示列表

来自分类Dev

删除第一个选择选项

来自分类Dev

删除第一个选择选项

来自分类Dev

将来自MySQL数据库的选择菜单中的第一个选项值设置为空

来自分类Dev

将来自MySQL数据库的选择菜单中的第一个选项值设置为空

来自分类Dev

删除第一个值?对象:空?在选择选项 Angularjs

来自分类Dev

JAVASCRIPT/BOOTSTRAP-如何根据第一个选择的选项在另一个选择上自动选择选项?

来自分类Dev

如何设置数据库表填充的选择的第一个值?

来自分类Dev

dhtmlxgrid列选择选项更改时,需要更新另一个数据库值

来自分类Dev

在Vue 3中加载异步选项时自动选择第一个<select>选项

来自分类Dev

Rails选择选项-将第一个选项设置为禁用,选中

来自分类Dev

jQuery如何选择第一个非隐藏的选择选项

来自分类Dev

根据上一个选择值显示下一个选择选项

来自分类Dev

根据另一个选择框的值动态加载一个选择框的选项,但从属选择未默认为第一个选项

来自分类Dev

选择第一个选项后,更改选择中其他选项的值

来自分类Dev

选项更改时选择第一个选项

来自分类Dev

在Bootstrap 3中设置第一个选择选项的样式

来自分类Dev

选择选项仅适用于第一个下拉菜单

来自分类Dev

如何更改第一个选择选项的文本颜色

来自分类Dev

大写第一个单词选择选项

来自分类Dev

从第一个默认选择选项触发更改事件

来自分类Dev

在 Angular 4 中尚未选择第一个选择选项时禁用第二个选择选项

来自分类Dev

<选项值不允许选择第一个选项

来自分类Dev

根据第一个选择框选项更新第二个选择框选项

来自分类Dev

如何存储数据并基于另一个选择值分配选择选项?

来自分类Dev

选择一个选项后自动显示数据库值

来自分类Dev

Javascript函数,用于根据选择选项的值来选中一个框

Related 相关文章

  1. 1

    根据动态表中的另一个选择选项选择选项值

  2. 2

    如何根据第一个选择选项显示第二个选择选项

  3. 3

    选择了第一个选择选项后的HTML选择选项显示列表

  4. 4

    删除第一个选择选项

  5. 5

    删除第一个选择选项

  6. 6

    将来自MySQL数据库的选择菜单中的第一个选项值设置为空

  7. 7

    将来自MySQL数据库的选择菜单中的第一个选项值设置为空

  8. 8

    删除第一个值?对象:空?在选择选项 Angularjs

  9. 9

    JAVASCRIPT/BOOTSTRAP-如何根据第一个选择的选项在另一个选择上自动选择选项?

  10. 10

    如何设置数据库表填充的选择的第一个值?

  11. 11

    dhtmlxgrid列选择选项更改时,需要更新另一个数据库值

  12. 12

    在Vue 3中加载异步选项时自动选择第一个<select>选项

  13. 13

    Rails选择选项-将第一个选项设置为禁用,选中

  14. 14

    jQuery如何选择第一个非隐藏的选择选项

  15. 15

    根据上一个选择值显示下一个选择选项

  16. 16

    根据另一个选择框的值动态加载一个选择框的选项,但从属选择未默认为第一个选项

  17. 17

    选择第一个选项后,更改选择中其他选项的值

  18. 18

    选项更改时选择第一个选项

  19. 19

    在Bootstrap 3中设置第一个选择选项的样式

  20. 20

    选择选项仅适用于第一个下拉菜单

  21. 21

    如何更改第一个选择选项的文本颜色

  22. 22

    大写第一个单词选择选项

  23. 23

    从第一个默认选择选项触发更改事件

  24. 24

    在 Angular 4 中尚未选择第一个选择选项时禁用第二个选择选项

  25. 25

    <选项值不允许选择第一个选项

  26. 26

    根据第一个选择框选项更新第二个选择框选项

  27. 27

    如何存储数据并基于另一个选择值分配选择选项?

  28. 28

    选择一个选项后自动显示数据库值

  29. 29

    Javascript函数,用于根据选择选项的值来选中一个框

热门标签

归档