0

これは、jQuery オートコンプリート検索ボックスのコードです。ソースでは、次のような JSON オブジェクトの配列をプッシュしています[{displayName :'john',value:'12345',email:'john@gmail.com'},...]

 var termTemplate = "<span class='ui-autocomplete-term'>%s</span>";
    $('.searchboxx').autocomplete({
        source: function(request, response) {
            var matcher = new RegExp($.ui.autocomplete.escapeRegex(request.term), "i");
            response($.grep(contacts, function(contact) {
                return matcher.test(contact.displayName)
                        || matcher.test(contact.value) || matcher.test(contact.email);
            }));
        },
        select: function(event, ui) {
            var contact = ui.item;

        }
    }).data("ui-autocomplete")._renderItem = function(ul, contact) {
        return $("<li>")
                .append('<a><div class="row">' +
                contact.displayName + " <" + contact.value + ">" + " [" + contact.rel + "]" +
                '</div>' +
                '</div></a>')
                .appendTo(ul);
    };

私のulは<li>john<12345>[mobile]</li>,.....、それらの1つをクリックしたときのようです。検索ボックスに12345が表示されますが、検索ボックスに名前を表示したいのですが、どうすればそれを達成できますか? selectにコードの平和を追加してみました

if(ui.item){
                    $('.searchboxx').val(contact.displayName);
                }

しかし、それは何か提案を働いていませんか?

4

1 に答える 1