1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96
| <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head >
<title>AutoCompletion</title>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.5.1.min.js"></script>
<script type="text/javascript" src="http://ajax.microsoft.com/ajax/jquery.ui/1.8.10/jquery-ui.js"></script>
<script type="text/javascript">
var cache = {};
$(function ()
{
$("#City_Id, #City_Name").autocomplete({
source: function (request, response)
{
//Si la réponse est dans le cache
if ((request.term) in cache)
{
response($.map(cache[request.term], function (item)
{
return {
label: item.City_Id + ", " + item.City_Name,
value: function ()
{
if ($(this).attr('id') == 'City_Id')
{
$('#City_Name').val(item.City_Name);
return item.City_Id;
}
else
{
$('#City_Id').val(item.City_Id);
return item.City_Name;
}
}
}
}));
}
//Sinon -> Requete Ajax
else
{
var objData = {};
if ($(this.element).attr('id') == 'City_Id')
{
objData = { City_Id: request.term, maxRows: 10 };
}
else
{
objData = { City_Name: request.term, maxRows: 10 };
}
$.ajax({
url: "./AutoCompletion.php",
dataType: "json",
data: objData,
type: 'POST',
success: function (data)
{
//Ajout de reponse dans le cache
cache[(request.term)] = data;
response($.map(data, function (item)
{
return {
label: item.City_Id + ", " + item.City_Name,
value: function ()
{
if ($(this).attr('id') == 'City_Id')
{
$('#City_Name').val(item.City_Name);
return item.City_Id;
}
else
{
$('#City_Id').val(item.City_Id);
return item.City_Name;
}
}
}
}));
}
});
}
},
minLength: 3,
delay: 600
});
});
</script>
<link rel="Stylesheet" type="text/css" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.9/themes/base/jquery-ui.css" />
</head>
<body>
<form action="index.html">
City_Id :<input type="text" id="City_Id" size="6"/>
City_Name : <input type="text" id="City_Name" />
</form>
</body>
</html> |
Partager