0

ここで問題が発生しています オートコンプリートを使用してDBにデータを表示したい しかし、テキストボックスで検索すると、たとえばすべてが表示されます

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 に答える