JQuery QuickSearch выделить результаты с вызовом функции OnAfter? - PullRequest
1 голос
/ 08 мая 2009

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

Я думаю, что могу использовать вызов функции onAfter из QuickSearch , чтобы вызвать плагин SearchHighlight для выделения текста, который я набираю.

Это возможно? Мне трудно заставить его работать.

<meta http-equiv="Content-type" content="text/html; charset=utf-8" />
        <title>rikrikrik - quickSearch jQuery plug-in - List items</title>
        <script src="jquery.js" type="text/javascript" charset="utf-8"></script>
        <script src="jquery.quicksearch.js" type="text/javascript" charset="utf-8"></script>
        <script src='jquery.SearchHighlight.js'></script>
        <script type="text/javascript" charset="utf-8">
            $(document).ready(function () {             
                $('ul#a li').quicksearch({
                    attached: 'ul:first',
                    position: 'before',
                    labelText: 'Search all countries beginning with A',
                    inputText: 'Search',
                    loaderImg: 'loader.gif',
                    loaderText: 'Searching...'
                    onAfter: ('ul#a li').SearchHighlight(partial)

1 Ответ

2 голосов
/ 08 мая 2009

Похоже, что этот плагин предназначен для работы с регулярным выражением, которое анализирует ключевые слова из URL-адреса реферера. Я не вижу, как вы меняете параметры плагина SearchHighlight, поэтому вы работаете с его конфигурацией по умолчанию. Это означает, что он не знает о вашем текстовом поле поиска и не знает, как извлечь из него ключевые слова. Похоже, что вы можете использовать опцию keys, чтобы перенастроить его на использование определенных ключевых слов.

Итак, вам нужно изменить свой вызов SearchHighlight на что-то вроде этого:

        $(document).ready(function() {
        $('ul#a li').quicksearch({
        attached: 'ul:first',
        position: 'before',                                
        labelText: 'Search all countries beginning with A',                                
        inputText: 'Search',                                
        loaderImg: 'loader.gif',                                
        loaderText: 'Searching...',
        onAfter: function() { $('ul#a li').SearchHighlight({ exact: "partial", keys: $('.qs_input').val() });
    }); 

где SEARCH_BOX - идентификатор вашего текстового поля.

РЕДАКТИРОВАТЬ : Ха! Мой синтаксис был далеко. Извини за это. Приведенный выше код должен работать для вас. Кроме того, это может быть не так уж и здорово, потому что при изменении строки поиска невозможно сбросить основные моменты.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...