JQuery Autocomplete
Homepage: http://bassistance.de/jquery-plugins/jquery-plugin-autocomplete/Author(s): Dylan Verheul, Dan G. Switzer, Anjesh Tuladhar, Joern Zaefferer
Version: 1.1pre Autocomplete an input field to enable users quickly finding and selecting some value from a set provided by the server. By giving an autocompleted field focus or entering something into it, the plugin starts searching for matching entries and displays a list of values to choose from. By entering more characters, the user can filter down the list to better matches. This can be used to enter previous selected values, eg. for tags, to complete an address, eg. enter a city name and get the zip code, or maybe enter email addresses from an addressbook. See also JQueryjaxHelper for examples on how to integrate autocompletion into Foswiki.
Usage
Autocompletion is activated for HTML input elements whoseautocomplete attribute value does not equal off.
It can either be list of candidate values, or an URL, in which case candidate values are queried from an AJAX backend.
The current input prefix is provided via the q URL parameter. The backend must return a list of matching values
separated by newlines.
Example
This example queries candidate values from a simple AJAX backend using the wiki application in thedata section of this topic.
See also JQuery Textbox List
First, here's the set of values we want to pick from: - backup
- bash
- emulation
- games
- irc
- linux
- mercurial
- patches
- perl
- php
- python
- site
- surfing
- tag
- test
- foswiki
- web
- wiki
- windows
- windsurfing
- wine
Enter tags:
Tags are suggested as you type. Separate multiple tags using a comma (,).
%STARTSECTION{"data"}%%SEARCH{
"^ \* (%ENCODE{"%URLPARAM{"q"}%" old="$comma, " new="|,"}%).*$"
web="%WEB%"
topic="%TOPIC%"
type="regex"
multiple="on"
nonoise="on"
format=" $pattern(.*?\* ([^ ]*).*) "
separator="$n"
}%
%ENDSECTION{"data"}%
Alternative implementation using FilterPlugin
If you don't have Foswiki 1.1, you can use the Foswiki:Extensions.FilterPlugin which has the capability to filter a list based on a regular expression passed from Javascript.Enter tags:
Tags are suggested as you type. Separate multiple tags using a comma (,).
%STARTSECTION{"data_fp"}%%FORMATLIST{
"
backup
bash
emulation
games
irc
linux
mercurial
patches
perl
php
python
site
surfing
tag
test
foswiki
web
wiki
windows
windsurfing
wine
"
include=".*%URLPARAM{"q"}%.*"
split="\n"
format=" $1 "
separator="$n"
}%%ENDSECTION{"data_fp"}%