2016-04-09 5 views
1

Hier ist der Teil meiner Javascript:JQuery: die automatische Vervollständigung Werte und categories.Error: this.source ist keine Funktion

$(function(){ 

var dbTags=<?php echo json_encode($namesArray);?>; 
var myTag; 

$("#searchTags").autocomplete({ 

    source: dbTags, 
    minLength: 2, 
    select: function(event, ui){ 

myTag=ui.item.value; 

Mein PHP-Code:

$findNames=$user_home->runQuery("SELECT productTitle, category from Iranga "); 
$findNames->execute(); 
$information=$findNames->fetchAll(PDO::FETCH_ASSOC); 

foreach($information as $item){ 

    $namesArray=array("label:"=>$item['productTitle'], "category:"=>$item['category']); 

} 

Am Planung dieses verwenden Skript: https://jqueryui.com/autocomplete/#categories

Die Frage, wie man meine dbTags Variable benutzt und definiert, wenn sie Produkt tilte und Kategorien enthält?

Antwort

1

Wenn Sie die example you linked verfolgen, möchten Sie, dass Ihr "source" -Array ein Array von Objekten mit den Eigenschaften "label" und "category" sein soll. Ich bin nicht sicher, was Ihre PHP ausgegeben wird, oder welche Datenbank api Sie verwenden (PDO vorausgesetzt), aber ich würde versuchen:

$findNames=$user_home->runQuery("SELECT productTitle, category from Products"); 
$findNames->execute(); 
while ($row=$findNames->fetch()){ 
$namesArray[] = array("label" => $row['productTitle'], "category" => $row['category']); 
} 
+0

* „oder was Datenbank api Sie verwenden“ * - OP mit PDO. –

+0

Was ist 'runQuery()'? – James

+0

Ich bin nicht das OP btw ;-) Aber das muss doch eine benutzerdefinierte Funktion sein. –

Verwandte Themen