var json = ["Alabama",
"Alaska",
"Arizona",
"Arkansas",
"California",
"Colorado",
"Connecticut",
"Delaware",
"Florida",
"Georgia",
"Hawaii",
"Idaho",
"Illinois",
"Indiana",
"Iowa",
"Kansas",
"Kentucky",
"Little Rock",
"Louisiana",
"Maine",
"Maryland",
"Massachusetts",
"Michigan",
"Minnesota",
"Mississippi",
"Missouri",
"Montana",
"Nebraska",
"Nevada",
"New Hampshire",
"New Jersey",
"New Mexico",
"New York",
"North Carolina",
"North Dakota",
"Ohio",
"Oklahoma",
"Oregon",
"Pennsylvania",
"RockFord",
"Rhode Island",
"South Carolina",
"South Dakota",
"Tennessee",
"Texas",
"Utah",
"Vermont",
"Virginia",
"Washington",
"West Virginia",
"Wisconsin",
"Wyoming",
];
json.sort();
$("input").autocomplete({
source: json
}).data("ui-autocomplete")._renderMenu = function(ul, items) {
var that = this;
var val = that.element.val();
$.each($.grep(items, function(value, key) {
return new RegExp(val.toLowerCase())
.test(value.value.toLowerCase().slice(0, val.length))
}), function(index, item) {
that._renderItemData(ul, item);
});
};
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js">
</script>
<script type="text/javascript" src="https://code.jquery.com/ui/1.9.2/jquery-ui.js">
</script>
<input type="text" />
感谢您的回复,但它并不总是有效,我试图扩大阵列以包括美国50个州。键入R或M等的示例不会返回预期的结果。 HTTP://的jsfiddle。net/Gm9Bz/74/ – user1527762
非常感谢。它的工作完美。 –