我正在尝试使用jQuery.autocomplete而不使用回调。我的JSON数据源存储在JS变量中。这一点是为了避免拨打电话。
但是当我尝试使用自动完成时,我不断收到错误消息
Request-URI太大
这是我的代码:
// This list is much longer
country_data_source = [{"id":"AF","name":"Afghanistan"},{"id":"AL","name":"Albania"},{"id":"DZ","name":"Algeria"},{"id":"AS","name":"American Samoa"},{"id":"AD","name":"Andorra"},{"id":"AO","name":"Angola"}]
jQuery( "#country" ).autocomplete({
minLength: 0,
source: country_data_source
});
jQuery是否仍在使用POST / GET,因此由于浏览器的限制而给我这个错误?
* 注意:* 如果我只使用上面的短列表,则自动完成功能根本没有响应。
甚至尝试了$.getJSON(country_data_source)
答案 0 :(得分:4)
自动填充可能无法将您的数组理解为本地源,因为它不是由每个都由“label”和“value”属性组成的对象组成。在您的情况下,您提供了一个不符合预期的ID和名称。 您将不得不转换此数组的对象,或者您可能只提供将用作标签的字符串数组。 因为jQuery UI Autocomplete没有找到它在数组中搜索的内容,所以它会切换到下一个解释:url。