La saisie semi-automatique ne montre pas les options tant que le retour arrière et le texte ne sont pas visibles

ive a créé un JSfiddle ici http://jsfiddle.net/8nzty/ code ici: –

 $(document).ready(function () { $(".items").click(function () { $(this).val(''); }); var items = [{ "ID": 1, "Name": "HP DL360p", "PartNo": " 670638-425", "Description": "" }, { "ID": 2, "Name": "Samsung 840 Pro 256GB", "PartNo": "", "Description": "256GB SSD" }, { "ID": 3, "Name": "HP MSA P2000", "PartNo": "AW568A", "Description": "" }, { "ID": 4, "Name": "HP BL460c G6", "PartNo": null, "Description": "HP G6 Blade" }] $("#Name").autocomplete({ minLength: 0, source: items, focus: function (event, ui) { $("#Name").val(ui.item.Name); return false; }, select: function (event, ui) { $("#Name").val(ui.item.Name); $("#PartNo").val(ui.item.PartNo); $("#Description").val(ui.item.Description); return false; } }); })  
4 results are available, use up and down arrow keys to navigate.

Ce qui est censé se passer: je tape h et je vois une liste d’items commençant par h Je clique sur une option n ° de pièce et la description est automatiquement renseignée

que se passe-t-il: je tape h, rien ne se passe je frappe en arrière un menu déroulant apparaît avec aucun texte visible (peut-être son blanc?) au passage de la souris je vois du texte apparaître dans la zone de nom, cliquez sur l’un et son remplissage automatique comme prévu.

Voir le violon

Vous l’avez presque. Le problème est que vous ne fournissez pas un moyen d’afficher les options à l’écran. Vous utilisez un tableau d’objects JSON. Le widget doit donc savoir quelles données et comment les afficher.

 $("#Name").autocomplete({ //existing widget settings }) .data( "ui-autocomplete" )._renderItem = function( ul, item ) { return $( "
  • " ) .append( "" + item.Name + "
    " + item.Description + "
    " ) .appendTo( ul ); };
  • à la fin du widget autocomplete résout le problème.