0

我在这里遇到问题我想使用自动完成显示数据库中的数据但是当我在文本框中搜索时,它会显示所有内容,例如

c++javaphpcoldfusionjavascriptaspruby

但我想要的是

"c++", "java", "php", "coldfusion", "javascript", "asp", "ruby"

这是我的代码

控制器

 function get_ingredients() {
          $this->load->helper(array('form', 'url'));
        $this->load->library('form_validation');

             $this->load->model("save_datas");
        $data["show_ingre"] = $this->save_datas->select_ingredient();
        $this->load->view("view_home", $data);
    }

看法

<script>
            $(document).ready(function() {
                $("input#autocomplete").autocomplete({
                    source: ["<?php
foreach ($show_ingre as $ingre) {
    echo "$ingre->ingredient";
}
?>"]


                    });
                });
        </script>

   <?php echo form_open('home/save_input'); ?>
        <input type="text" name="ingredient" id="autocomplete" /><br/>
        <input type="submit" name="submit"/>
        <?php form_close(); ?>

模型

function select_ingredient() {
        $query = $this->db->query("SELECT ingredient FROM ingredients");
        return $query->result();
    }
4

1 回答 1

0

视图文件搞砸了。看看你的页面源代码。它应该是这样的:

 <script>
 $(document).ready(function() {
     $("input#autocomplete").autocomplete({
         source: ["c++javaphpcoldfusionjavascriptaspruby"]
     });
 });
 </script>

我认为您应该能够在这里看到问题。无论如何,如果你没有,这里是修复它的代码:

<script>
$(document).ready(function() {
    $("input#autocomplete").autocomplete({
        source: [<?php
        foreach ($show_ingre as $ingre) {
            echo '"' . $ingre->ingredient . '", ';
        }
        ?>]
    });
});
</script>
于 2012-09-14T02:59:02.963 回答