2015-04-05 45 views
0

不知道發生了什麼或缺少什麼,但由於某種原因,當使用自動完成並嘗試檢索$key$value,以便我可以列出在下拉菜單中選擇value,然後使用ID來確定下拉是完全灰色的,我不能選擇任何東西。這是一個例子。jquery - 使用自動完成嘗試從數據庫中檢索密鑰和值返回灰色下拉菜單

enter image description here

jQuery的

$(document).on('focus', 'div.form-group-options div.input-group-option:last-child input', function(){ 
    var sInputGroupHtml = $(this).parent().html(); 
    var sInputGroupClasses = $(this).parent().attr('class'); 
    var sInputGroupId = $(this).parent().attr('id'); 
    $(this).parent().parent().append('<div class="'+sInputGroupClasses+'">'+sInputGroupHtml+'</div>'); 
    $('.searchsong').autocomplete({ 
     source:'../includes/searchaddsong.php', 
     minLength:0, 
    }); 
}); 

searchaddsong.php

$key=$_GET['term']; 
$sql = "SELECT ID,title FROM wafilepaths WHERE title LIKE '%{$key}%'"; 
$result = mysql_query($sql); 
$rows = array(); 
while ($row = mysql_fetch_assoc($result)) { 
    $rows[] = $row; 
} 
echo json_encode($rows); 

如果我改變MySQL來$array[] = $row['title'];然後我得到的下拉值,但我需要的ID以及我可以參考該記錄。

任何幫助都會很棒。

+0

如果可能,可以包括'css'? ,創建stacksnippets,http://jsfiddle.net來演示? – guest271314 2015-04-05 02:12:33

回答

0

自動完成需要採用兩種格式之一。標準索引陣列或格式

[ 
    { 
     label:"something", 
     value: "something" 
    }, 
    .... 

] 

您的title和其他東西。只需將地圖titleid改爲labelvalue即可。

$row['label'] = $row['title']; 
$row['value'] = $row['id']; //or whatever this field was 
$rows[] = $row; 
+0

它也可以是純HTML。 – 2015-04-30 05:05:39

+0

@phpPluginMaster爲什麼選擇投票?我的回答實際上與男性問題有關。這不是jQuery文檔頁面。 – James 2015-04-30 12:17:25

+0

你對他們撒謊,因爲你可以像HTML格式輸出它:https://github.com/FREE-FROM-CMS/AutoComplete/ – 2015-04-30 19:04:26

相關問題