1

Можно ли добавить некоторый HTML в конец typeahead? Я пробовал много разных вещей, но никто не работал.Append to typeahead

То, что я пытаюсь сделать, это получить последний результат typeahead: Search for "< what the user typed into the input >".

Вот что я пытался на JSFiddle: http://jsfiddle.net/MgcDU/8621/

То, что я ожидал, что это сделать, добавьте <li> в конце выпадающего меню после его создания, но это не делает. Зачем?

HTML:

<input type="text" data-source="[&quot;Alabama&quot;,&quot;Alaska&quot;,&quot;Arizona&quot;,&quot;Arkansas&quot;,&quot;California&quot;,&quot;Colorado&quot;,&quot;Connecticut&quot;,&quot;Delaware&quot;,&quot;Florida&quot;,&quot;Georgia&quot;,&quot;Hawaii&quot;,&quot;Idaho&quot;,&quot;Illinois&quot;,&quot;Indiana&quot;,&quot;Iowa&quot;,&quot;Kansas&quot;,&quot;Kentucky&quot;,&quot;Louisiana&quot;,&quot;Maine&quot;,&quot;Maryland&quot;,&quot;Massachusetts&quot;,&quot;Michigan&quot;,&quot;Minnesota&quot;,&quot;Mississippi&quot;,&quot;Missouri&quot;,&quot;Montana&quot;,&quot;Nebraska&quot;,&quot;Nevada&quot;,&quot;New Hampshire&quot;,&quot;New Jersey&quot;,&quot;New Mexico&quot;,&quot;New York&quot;,&quot;North Dakota&quot;,&quot;North Carolina&quot;,&quot;Ohio&quot;,&quot;Oklahoma&quot;,&quot;Oregon&quot;,&quot;Pennsylvania&quot;,&quot;Rhode Island&quot;,&quot;South Carolina&quot;,&quot;South Dakota&quot;,&quot;Tennessee&quot;,&quot;Texas&quot;,&quot;Utah&quot;,&quot;Vermont&quot;,&quot;Virginia&quot;,&quot;Washington&quot;,&quot;West Virginia&quot;,&quot;Wisconsin&quot;,&quot;Wyoming&quot;]" data-items="10" data-provide="typeahead" style="margin: 0 auto;" class="span3"> 

JQuery:

$(".typeahead.dropdown-menu").append('<li data-value="Custom" class=""><a href="#">CUSTOM TEXT</a></li>'); 

ответ

0

Выпадающее меню строится в процессе фильтрации машинописный. Если вы проверите его «при загрузке», вы заметите, что он пуст.

В зависимости от вашей конкретной проблемы, которую вы пытаетесь решить, я могу представить два возможных решения.

Одним из решений является расширение плагина typeahead и предоставление пользовательской функции «рендеринга». Это позволит вам изменить процесс рендеринга списка и добавить дополнительные <li> s, а также все, что вам нравится. Это, вероятно, рассматривается как «лучший способ».

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

Конечно, решения связаны с проблемами и, не зная самой специфики того, что вы хотите сделать, я не могу рекомендовать, какой из них использовать. Но это ваши два варианта, насколько я могу думать.