]> source.dussan.org Git - jquery-ui.git/commitdiff
Autocomplete: multiple demo added
authorjzaefferer <joern.zaefferer@gmail.com>
Thu, 15 Apr 2010 08:43:47 +0000 (10:43 +0200)
committerjzaefferer <joern.zaefferer@gmail.com>
Thu, 15 Apr 2010 08:43:47 +0000 (10:43 +0200)
demos/autocomplete/index.html
demos/autocomplete/multiple.html [new file with mode: 0644]

index 42f13dc4bc87ee2057679eb90a012d427b838a42..0c92d19b4a8d681aa00e6a8ceaf0eacf6219c2c9 100644 (file)
@@ -17,6 +17,7 @@
                        <li><a href="custom-data.html">Custom data and display</a></li>
                        <li><a href="xml.html">XML data parsed once</a></li>
                        <li><a href="categories.html">Categories</a></li>
+                       <li><a href="multiple.html">Multiple values</a></li>
                </ul>
        </div>
 </body>
diff --git a/demos/autocomplete/multiple.html b/demos/autocomplete/multiple.html
new file mode 100644 (file)
index 0000000..5fef4ba
--- /dev/null
@@ -0,0 +1,75 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+       <meta charset="UTF-8" />
+       <title>jQuery UI Autocomplete multiple demo</title>
+       <link type="text/css" href="../../themes/base/jquery.ui.all.css" rel="stylesheet" />
+       <script type="text/javascript" src="../../jquery-1.4.2.js"></script>
+       <script type="text/javascript" src="../../ui/jquery.ui.core.js"></script>
+       <script type="text/javascript" src="../../ui/jquery.ui.widget.js"></script>
+       <script type="text/javascript" src="../../ui/jquery.ui.position.js"></script>
+       <script type="text/javascript" src="../../ui/jquery.ui.autocomplete.js"></script>
+       <link type="text/css" href="../demos.css" rel="stylesheet" />
+       <script type="text/javascript">
+       $(function() {
+               function split(val) {
+                       return val.split(/,\s*/);
+               }
+               function extractLast(term) {
+                       return split(term)[split(term).length - 1];
+               }
+               
+               $("#birds").autocomplete({
+                       source: function(request, response) {
+                               $.getJSON("search.php", {
+                                       term: extractLast(request.term)
+                               }, response);
+                       },
+                       search: function() {
+                               // custom minLength
+                               var term = extractLast($(this).val());
+                               if (term.length < 2) {
+                                       return false;
+                               }
+                       },
+                       focus: function() {
+                               // prevent value inserted on focus
+                               return false;
+                       },
+                       select: function(event, ui) {
+                               var terms = split( $(this).val() );
+                               // remove the current input
+                               terms.pop();
+                               // add the selected item
+                               terms.push( ui.item.value );
+                               // add placeholder to get the comma-and-space at the end
+                               terms.push("");
+                               $(this).val( terms.join(", ") );
+                               return false;
+                       }
+               });
+       });
+       </script>
+</head>
+<body>
+
+<div class="demo">
+
+<div class="ui-widget">
+       <label for="birds">Birds: </label>
+       <input id="birds" size="50" />
+</div>
+
+</div><!-- End demo -->
+
+<div class="demo-description">
+<p>
+Usage: Enter at least two characters to get bird name suggestions. Select a value to continue adding more names.
+</p>
+<p>
+This is an example showing how to use the source-option along with some events to enable autocompleting multiple values into a single field.
+</p>
+</div><!-- End demo-description -->
+
+</body>
+</html>