2009-08-19 2 views
6

Недавно я задал этот вопрос и вернулся отличное решение с помощью JQuery для автозаполнения:нужно GMAIL как functionailty - Jquery автозаполнения включают имена и адреса электронной почты - в строке поиске

Need a good way for user to select "To" for email sending

Решение было использовать этот синтаксис:

$("#suggest3").autocomplete(someArray, { 
    multiple: true, 
    mustMatch: true, 
    autoFill: true 

});

У меня теперь есть автозаполнение в списке адресов электронной почты, и мне нужно сделать это еще на один шаг, чтобы нанести на gmail как функциональность, где я включаю как «реальное» имя, так и адрес электронной почты в списке, чтобы пользователи могли вводить либо имя или адрес электронной почты, и он найдет запись:

Таким образом, список будет выглядеть примерно так, и пользователь может выполнить поиск, набрав «Firs ...». или "emailAdd ..."

"First Last" <emailAddress> 
"First1 Las1t" <emailAddress1> 
"First2 Last2" <emailAddress2> 
+0

Мне нужна была аналогичная функциональность в C# /. NET ... см. Вопрос здесь: [http://stackoverflow.com/questions/1539799/autocomplete-email-address-and-or-names-in-c] – greg7gkb

ответ

6

Секундочку .. А вы посмотрите на the demo? Я думаю, что это уже делает именно это. Например, если я набираю «для» или «jap» в поле электронной почты, появляется одно и то же лицо: Fornelia Marconi (с «jap», являющимся частью ее адреса электронной почты). Вот код, который позволяет это.

$("#thickboxEmail").autocomplete(emails, { 
    minChars: 0, 
    width: 310, 
    matchContains: true, 
    highlightItem: false, 
    formatItem: function(row, i, max, term) { 
     return row.name.replace(new RegExp("(" + term + ")", "gi"), "<strong>$1</strong>") + "<br><span style='font-size: 80%;'>Email: &lt;" + row.to + "&gt;</span>"; 
    }, 
    formatResult: function(row) { 
     return row.to; 
    } 
}); 

массив пар имя-электронной почты выглядит так:

var emails = [ 
    { name: "Peter Pan", to: "[email protected]" }, 
    { name: "Molly", to: "[email protected]" } 
]; 
+2

вы являются правильными. я полностью пропустил это – leora

3

FYI, Это "автозаполнения" плагин больше не находится в разработке, в примечании на Webiste:

http://bassistance.de/jquery-plugins/jquery-plugin-autocomplete/

JQuery плагин: автозаполнение

Примечание (2010-06-23): Этот плагин устарел и больше не разработан. Его преемник является частью пользовательского интерфейса jQuery, , и это руководство по миграции объясняет, как получить этот плагин на новый . Эта страница останется как есть для справки, но не будет обновляться .

Так что, если вы хотите, вы можете использовать следующий сопоставимый пример из jQueryUI автозаполнения:

http://jqueryui.com/demos/autocomplete/#multiple-remote

Я лично предпочитаю JQuery инструменты для jQueryUI/но они не предлагают автозаполнения плагин в этот момент ... о хорошо.