jquery-ui/demos/autocomplete/custom-data.html

97 lines
2.5 KiB
HTML
Raw Normal View History

<!DOCTYPE html>
<html lang="en">
2010-01-20 14:00:14 +00:00
<head>
2010-09-10 02:33:09 +00:00
<meta charset="utf-8">
<title>jQuery UI Autocomplete - Custom data and display</title>
2010-09-10 02:24:52 +00:00
<link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
2011-03-03 01:44:26 +00:00
<script src="../../jquery-1.5.1.js"></script>
2010-09-10 02:24:52 +00:00
<script src="../../ui/jquery.ui.core.js"></script>
<script src="../../ui/jquery.ui.widget.js"></script>
<script src="../../ui/jquery.ui.position.js"></script>
<script src="../../ui/jquery.ui.menu.js"></script>
2010-09-10 02:24:52 +00:00
<script src="../../ui/jquery.ui.autocomplete.js"></script>
<link rel="stylesheet" href="../demos.css">
<style>
2010-01-20 14:00:14 +00:00
#project-label {
display: block;
font-weight: bold;
margin-bottom: 1em;
}
#project-icon {
float: left;
height: 32px;
width: 32px;
}
#project-description {
margin: 0;
padding: 0;
}
</style>
2010-09-10 02:24:52 +00:00
<script>
2010-01-20 14:00:14 +00:00
$(function() {
var projects = [
{
2010-09-10 02:24:52 +00:00
value: "jquery",
label: "jQuery",
desc: "the write less, do more, JavaScript library",
icon: "jquery_32x32.png"
2010-01-20 14:00:14 +00:00
},
{
2010-09-10 02:24:52 +00:00
value: "jquery-ui",
label: "jQuery UI",
desc: "the official user interface library for jQuery",
icon: "jqueryui_32x32.png"
2010-01-20 14:00:14 +00:00
},
{
2010-09-10 02:24:52 +00:00
value: "sizzlejs",
label: "Sizzle JS",
desc: "a pure-JavaScript CSS selector engine",
icon: "sizzlejs_32x32.png"
2010-01-20 14:00:14 +00:00
}
];
2010-09-10 02:24:52 +00:00
$( "#project" ).autocomplete({
2010-01-20 14:00:14 +00:00
minLength: 0,
source: projects,
2010-09-10 02:24:52 +00:00
focus: function( event, ui ) {
$( "#project" ).val( ui.item.label );
2010-01-20 14:00:14 +00:00
return false;
},
2010-09-10 02:24:52 +00:00
select: function( event, ui ) {
$( "#project" ).val( ui.item.label );
$( "#project-id" ).val( ui.item.value );
$( "#project-description" ).html( ui.item.desc );
$( "#project-icon" ).attr( "src", "images/" + ui.item.icon );
2010-01-20 14:00:14 +00:00
return false;
}
})
.data( "autocomplete" )._renderItem = function( ul, item ) {
2011-05-27 12:32:48 +00:00
return $( "<li>" )
.data( "item.autocomplete", item )
.append( "<a>" + item.label + "<br>" + item.desc + "</a>" )
.appendTo( ul );
};
2010-01-20 14:00:14 +00:00
});
</script>
</head>
<body>
<div class="demo">
2010-03-18 10:31:17 +00:00
<div id="project-label">Select a project (type "j" for a start):</div>
2011-05-27 12:32:48 +00:00
<img id="project-icon" src="images/transparent_1x1.png" class="ui-state-default">
<input id="project">
<input type="hidden" id="project-id">
2010-01-20 14:00:14 +00:00
<p id="project-description"></p>
</div><!-- End demo -->
2010-09-10 02:24:52 +00:00
2010-01-20 14:00:14 +00:00
<div class="demo-description">
2010-09-10 02:24:52 +00:00
<p>You can use your own custom data formats and displays by simply overriding the default focus and select actions.</p>
<p>Try typing "j" to get a list of projects or just press the down arrow.</p>
2010-01-20 14:00:14 +00:00
</div><!-- End demo-description -->
</body>
</html>