Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Twitter bootstrap typeahead zwraca wiele wartości i wypełnia pole edycji

Jeśli dobrze rozumiem, otrzymujesz wyniki z powrotem, ale nie możesz wypełnić pól wejściowych. Chociaż nie używam czcionki Twitter Bootstrap, robię coś bardzo podobnego z funkcją autouzupełniania jQuery. Poniższy kod nie został przetestowany i oczywiście będziesz musiał go samodzielnie zmodyfikować, ale miejmy nadzieję, że będzie pomocny.

Zobacz działające jsFiddle demo na coś podobnego.

PHP

$array = array();
while ($row = mysql_fetch_assoc($sql)) {
    array_push($array,array('ContactName'=>$row['ContactName'],'Telephone'=>$row['Telephone'],'Email'=>$row['Email']));
}
echo json_encode($array);


Możesz sprawdzić, co zostanie zwrócone, ręcznie wprowadzając adres URL (np. twojawitryna/Klient.php?query=SomeContactName). Powinieneś zobaczyć coś podobnego do tego:

[{"ContactName":"Some Contact","Telephone":"5555555555","Email":"[email protected]"},
 {"ContactName":"Some Other Contact","Telephone":"5555555555","Email":"[email protected]"}]


HTML/Javascript

<script>
    $('input.typeahead').typeahead({
        source: function (query, process) {
            $.ajax({
                url: 'Customer.php',
                type: 'POST',
                dataType: 'JSON',
                // data: 'query=' + query,
                data: 'query=' + $('#contactName').val(),
                success: function(data)
                {
                    var results = data.map(function(item) {
                        var someItem = { contactname: item.ContactName, telephone: item.Telephone, email: item.Email };
                        return JSON.stringify(someItem.contactname);
                    });
                    return process(results);
                }
            });
        },
        minLength: 1,
        updater: function(item) {
            // This may need some tweaks as it has not been tested
            var obj = JSON.parse(item);
            return item;
        }
    });
</script>

Oto kilka innych postów, z którymi warto zapoznać się Jak zwrócić odpowiedź z AJAX zadzwonić? i Format wyniku ajax typu Bootstrap typeahead — przykład




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Znajdź kombinacje spełniające kryteria z zakresu

  2. Jak mapować bity w MySQL do hibernacji?

  3. zapytanie mysqli zwraca tylko pierwszy wiersz

  4. Jak dodać kolumnę za pomocą alter w mysql?

  5. Jak sortować wyniki MySQL z literami na początku, symbolami na końcu?