#javascript #meteor #autocomplete
#javascript #метеор #автозаполнение
Вопрос:
Я использую https://github.com/Meteor-Community-Packages/meteor-autocomplete
Я хотел бы знать, как я могу предварительно выбрать / предварительно заполнить значение в вводимом тексте автозаполнения. Если это невозможно, есть ли какой-либо способ установить значение по умолчанию? Значение HTML =»по умолчанию» не работает.
Я пытаюсь использовать его в полях композитора электронной почты to, cc, bcc. По умолчанию в полях ввода выбран некоторый пользователь по умолчанию (он может отличаться в зависимости от регистра), но они могут изменить его с помощью поиска в автозаполнении.
Комментарии:
1. Не могли бы вы предоставить свой текущий код?
Ответ №1:
Вот мой код (к сожалению, не было возможности редактировать, поэтому отвечаю с другой моей учетной записи)
settings() {
return {
position: 'bottom',
limit: 80,
rules: [
{ // token: '',
collection: Subscribers,
sort: true,
field: 'status',
matchAll: true,
filter: { status: { $ne: 'deleted' } },
template: Template.standardSubscribers,
selector(match) {
let regex;
regex = _.map(match.split(' '), function(key) { return new RegExp('^' key, 'i'); });
return {
'$or': [
{ 'firstName': { '$in': regex } },
{ 'lastName': { '$in': regex } },
{ 'email': { '$in': regex } },
{ 'address': { '$in': regex } },
{ 'secondaryEmail': { '$in': regex } },
{ 'businessName': { '$in': regex } }
]};
},
}
]
};
},
<template name="standardSubscribers">
<span class="">{{businessName}} {{#if isBusinessName businessName}} -- {{/if}} {{firstName}} {{lastName}} -- {{email}} -- {{secondaryEmail}} -- {{status}} -- {{address}}</span>
'autocompleteselect #email-to' (event, template, doc) {
if (doc.businessName) {
event.target.value = doc.businessName '<' doc.email '> --- ' doc.status;
} else {
event.target.value = doc.firstName ' ' doc.lastName '<' doc.email '> --- ' doc.status;
}
},
{{> inputAutocomplete settings=settings style="width: 73%" value="yogesh" id="email-cc" class="form-control" name="emailCC" autocomplete="off" }}