jquery интерфейс автозаполнения, показывающий прозрачные результаты - PullRequest
0 голосов
/ 23 марта 2020

jquery автозаполнение интерфейса, показывающее прозрачный результат. Я применил все ответы, на которые были даны разные вопросы, о потоке стека, но не получилось.

это мой код

 <link rel="stylesheet" href="css/jquery-ui.css" />

  <script src="https://code.jquery.com/jquery-3.4.1.min.js"></script>
  <script src="https://code.jquery.com/ui/1.12.1/jquery-ui.min.js"></script>
<script type="text/javascript">
  $(function() {
     $( "#search" ).autocomplete({

       source: 'scripts/auto.php',

     });

  });
</script>

это html

<div class="container box">

<h2>Search Here</h2>
<input type="text" name="search" id="search" placeholder="search here....">  

</div>

это php код

<?php
include('../admin/functions/dbconfig.php');


    $return_arr = array();
    $searchTerm = $_GET['term'];
    $sql ="SELECT lemma FROM lemma WHERE lemma like '" . $searchTerm . "%' ORDER BY lemma LIMIT 0,6";
    $data = array();
    $q=mysqli_query($conn,$sql);
    while ($row = mysqli_fetch_assoc($q)) {
    $data[] = $row[];
    }
    echo json_encode($data);



    ?>

вывод такой: enter image description here

1 Ответ

0 голосов
/ 23 марта 2020

Php не мой родной язык, я надеюсь, что это правильно. Я пытаюсь предложить вам альтернативу, но вы должны быть уверены, что ваш запрос возвращает результаты (вы должны увидеть это, проверив обработанные HTML, у вас должны быть значения в квадратных скобках).

<link rel="stylesheet" href="css/jquery-ui.css" />
<script src="https://code.jquery.com/jquery-3.4.1.min.js"></script>
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.min.js"></script>


<!-- PHP -->

<?php
  include('../admin/functions/dbconfig.php');

  function getArray() {
    $return_arr = array();
    $searchTerm = $_GET['term'];
    $sql ="SELECT lemma FROM lemma WHERE lemma like '" . $searchTerm . "%' ORDER BY lemma LIMIT 0,6";
    $data = array();
    $q=mysqli_query($conn,$sql);
    while ($row = mysqli_fetch_assoc($q)) {
    echo "'" . $row[] . "', "; 
    }
    
  }


?>


<!-- JS -->

<script type="text/javascript">
  $(function() {
    
    var availableTags = [<?php getArray(); ?>];

    $("#search").autocomplete({
      source: availableTags  //'scripts/auto.php',
    });

  });
</script>



<!-- HTML -->

<div class="container box">

  <h2>Search Here</h2>
  <input type="text" name="search" id="search" placeholder="search here....">

</div>
...