aboutsummaryrefslogtreecommitdiffstats
path: root/demos/autocomplete/xml.html
diff options
context:
space:
mode:
authorJörn Zaefferer <joern.zaefferer@gmail.com>2010-01-26 20:52:21 +0000
committerJörn Zaefferer <joern.zaefferer@gmail.com>2010-01-26 20:52:21 +0000
commit1382af8af0196a0bce10d8c58f449d2320cdf8a9 (patch)
tree13a1e5cadc625f90de40c187d05a1eddc0de3da8 /demos/autocomplete/xml.html
parentc3dd4ac373660b1d36eb527a7ad1387d5d39ef9d (diff)
downloadjquery-ui-1382af8af0196a0bce10d8c58f449d2320cdf8a9.tar.gz
jquery-ui-1382af8af0196a0bce10d8c58f449d2320cdf8a9.zip
autocomplete: added xml-parsing demo
Diffstat (limited to 'demos/autocomplete/xml.html')
-rw-r--r--demos/autocomplete/xml.html68
1 files changed, 68 insertions, 0 deletions
diff --git a/demos/autocomplete/xml.html b/demos/autocomplete/xml.html
new file mode 100644
index 000000000..92a089b56
--- /dev/null
+++ b/demos/autocomplete/xml.html
@@ -0,0 +1,68 @@
+<!doctype html>
+<html>
+<head>
+ <title>jQuery UI Autocomplete Remote datasource demo</title>
+ <link type="text/css" href="../../themes/base/ui.all.css" rel="stylesheet" />
+ <script type="text/javascript" src="../../jquery-1.4.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 log(message) {
+ $("<div/>").text(message).prependTo("#log");
+ $("#log").attr("scrollTop", 0);
+ }
+
+ $.ajax({
+ url: "london.xml",
+ dataType: "xml",
+ success: function(xmlResponse) {
+ var data = $("geoname", xmlResponse).map(function() {
+ return {
+ value: $("name", this).text() + ", " + ($.trim($("countryName", this).text()) || "(unknown country)"),
+ id: $("geonameId", this).text()
+ };
+ }).get();
+ $("#birds").autocomplete({
+ source: data,
+ minLength: 0,
+ select: function(event, ui) {
+ log(ui.item ? ("Selected: " + ui.item.value + ", geonameId: " + ui.item.id) : "Nothing selected, input was " + this.value);
+ }
+ });
+ }
+ })
+
+ });
+ </script>
+</head>
+<body>
+
+<div class="demo">
+
+<div class="ui-widget">
+ <label for="birds">London matches: </label>
+ <input id="birds" />
+</div>
+
+<div class="ui-widget" style="margin-top:2em; font-family:Arial">
+ Result:
+ <div id="log" style="height: 200px; width: 300px; overflow: auto;" class="ui-widget-content"></div>
+</div>
+
+</div><!-- End demo -->
+
+<div class="demo-description">
+<p>
+This demo shows how to retrieve some XML data, parse it using jQuery's methods, then provide it to the autocomplete as the datasource.
+</p>
+<p>
+This should also serve as a reference on how to parse a remote XML datasource - the parsing would just happen for each request within the source-callback.
+</p>
+</div><!-- End demo-description -->
+
+</body>
+</html>