1 |
torben |
2125 |
<!doctype html> |
2 |
|
|
<html lang="en"> |
3 |
|
|
<head> |
4 |
|
|
<meta charset="utf-8"> |
5 |
|
|
<title>jQuery UI Autocomplete - Custom data and display</title> |
6 |
|
|
<link rel="stylesheet" href="../../themes/base/jquery.ui.all.css"> |
7 |
|
|
<script src="../../jquery-1.9.1.js"></script> |
8 |
|
|
<script src="../../ui/jquery.ui.core.js"></script> |
9 |
|
|
<script src="../../ui/jquery.ui.widget.js"></script> |
10 |
|
|
<script src="../../ui/jquery.ui.position.js"></script> |
11 |
|
|
<script src="../../ui/jquery.ui.menu.js"></script> |
12 |
|
|
<script src="../../ui/jquery.ui.autocomplete.js"></script> |
13 |
|
|
<link rel="stylesheet" href="../demos.css"> |
14 |
|
|
<style> |
15 |
|
|
#project-label { |
16 |
|
|
display: block; |
17 |
|
|
font-weight: bold; |
18 |
|
|
margin-bottom: 1em; |
19 |
|
|
} |
20 |
|
|
#project-icon { |
21 |
|
|
float: left; |
22 |
|
|
height: 32px; |
23 |
|
|
width: 32px; |
24 |
|
|
} |
25 |
|
|
#project-description { |
26 |
|
|
margin: 0; |
27 |
|
|
padding: 0; |
28 |
|
|
} |
29 |
|
|
</style> |
30 |
|
|
<script> |
31 |
|
|
$(function() { |
32 |
|
|
var projects = [ |
33 |
|
|
{ |
34 |
|
|
value: "jquery", |
35 |
|
|
label: "jQuery", |
36 |
|
|
desc: "the write less, do more, JavaScript library", |
37 |
|
|
icon: "jquery_32x32.png" |
38 |
|
|
}, |
39 |
|
|
{ |
40 |
|
|
value: "jquery-ui", |
41 |
|
|
label: "jQuery UI", |
42 |
|
|
desc: "the official user interface library for jQuery", |
43 |
|
|
icon: "jqueryui_32x32.png" |
44 |
|
|
}, |
45 |
|
|
{ |
46 |
|
|
value: "sizzlejs", |
47 |
|
|
label: "Sizzle JS", |
48 |
|
|
desc: "a pure-JavaScript CSS selector engine", |
49 |
|
|
icon: "sizzlejs_32x32.png" |
50 |
|
|
} |
51 |
|
|
]; |
52 |
|
|
|
53 |
|
|
$( "#project" ).autocomplete({ |
54 |
|
|
minLength: 0, |
55 |
|
|
source: projects, |
56 |
|
|
focus: function( event, ui ) { |
57 |
|
|
$( "#project" ).val( ui.item.label ); |
58 |
|
|
return false; |
59 |
|
|
}, |
60 |
|
|
select: function( event, ui ) { |
61 |
|
|
$( "#project" ).val( ui.item.label ); |
62 |
|
|
$( "#project-id" ).val( ui.item.value ); |
63 |
|
|
$( "#project-description" ).html( ui.item.desc ); |
64 |
|
|
$( "#project-icon" ).attr( "src", "images/" + ui.item.icon ); |
65 |
|
|
|
66 |
|
|
return false; |
67 |
|
|
} |
68 |
|
|
}) |
69 |
|
|
.data( "ui-autocomplete" )._renderItem = function( ul, item ) { |
70 |
|
|
return $( "<li>" ) |
71 |
|
|
.append( "<a>" + item.label + "<br>" + item.desc + "</a>" ) |
72 |
|
|
.appendTo( ul ); |
73 |
|
|
}; |
74 |
|
|
}); |
75 |
|
|
</script> |
76 |
|
|
</head> |
77 |
|
|
<body> |
78 |
|
|
|
79 |
|
|
<div id="project-label">Select a project (type "j" for a start):</div> |
80 |
|
|
<img id="project-icon" src="images/transparent_1x1.png" class="ui-state-default" alt=""> |
81 |
|
|
<input id="project"> |
82 |
|
|
<input type="hidden" id="project-id"> |
83 |
|
|
<p id="project-description"></p> |
84 |
|
|
|
85 |
|
|
<div class="demo-description"> |
86 |
|
|
<p>You can use your own custom data formats and displays by simply overriding the default focus and select actions.</p> |
87 |
|
|
<p>Try typing "j" to get a list of projects or just press the down arrow.</p> |
88 |
|
|
</div> |
89 |
|
|
</body> |
90 |
|
|
</html> |