Как передать данные JSON в автозаполнение JQuery - PullRequest
1 голос
/ 23 января 2010

Хай, ребята,

Может кто-нибудь помочь мне передать эти данные json плагину jquery automplete ... Поскольку я новичок в jquery, я не знаю, как это сделать ...

[{"0":"1","id":"1","1":"Albania","country":"Albania"}, 
{"0":"2","id":"2","1":"Algeria","country":"Algeria`"}, 
{"0":"3","id":"3","1":"Angola","country":"Angola"}, 
{"0":"4","id":"4","1":"Anguilla","country":"Anguilla"}, 
{"0":"5","id":"5","1":"Antigua","country":"Antigua"}, 
{"0":"6","id":"6","1":"Argentina","country":"Argentina"}, 
{"0":"7","id":"7","1":"Armenia","country":"Armenia"}, 
{"0":"8","id":"8","1":"Aruba","country":"Aruba"}, 
{"0":"9","id":"9","1":"Australia","country":"Australia"}, 
{"0":"10","id":"10","1":"Austria","country":"Austria"}, 
{"0":"11","id":"11","1":"Azerbaijan","country":"Azerbaijan"}, 
{"0":"26","id":"26","1":"Bulgaria","country":"Bulgaria"}, 
{"0":"27","id":"27","1":"Burkina Faso","country":"Burkina Faso"}] 

Ответы [ 3 ]

2 голосов
/ 23 января 2010

Откуда приходит json? Если это не JSON, может быть лучше поместить его в другой формат; плагин jquery.autocomplete, похоже, не имеет встроенной обработки JSON, поэтому вам придется самостоятельно писать функции обработки.

Предполагая, что эти данные никогда не изменятся, вы можете вместо этого сохранить их в файл JavaScript (скажем, country.js). Используйте следующий формат:

var countries = [
 { id: 1, country: "Albania" }, 
 { id: 2, country: "Algeria`" }, 
 { id: 3, country: "Angola" }, 
 { id: 4, country: "Anguilla" }, 
 { id: 5, country: "Antigua" }, 
 { id: 6, country: "Argentina" }, 
 { id: 7, country: "Armenia" }, 
 { id: 8, country: "Aruba" }, 
 { id: 9, country: "Australia" }, 
 { id: 10, country: "Austria" }, 
 { id: 11, country: "Azerbaijan" }, 
 { id: 26, country: "Bulgaria" }, 
 { id: 27, country: "Burkina Faso" }
];

Тогда вот как вы бы назвали плагин в вашем основном файле:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>

<script src="jquery.js"></script>
<script src="jquery.autocomplete.js"></script>
<script src="countries.js"></script>
<link rel="stylesheet" type="text/css" href="jquery.autocomplete.css" />

<script type="text/javascript">
$().ready(function() {


 $("#menu").autocomplete(countries, {
  minChars: 0,
  width: 310,

  matchContains: true,
  autoFill: false,
  formatItem: function(row, i, max) {
   return row.country;
  },
  formatMatch: function(row, i, max) {
   return row.country;
  },
  formatResult: function(row) {
   return row.id;
  }
 });

});

</script>

</head>

<body>

 <form autocomplete="off">
  <p>
   <label>Countries:</label>
   <input type="text" id="menu" />
   <input type="button" value="Get Value" />
  </p>

</body>
</html>
0 голосов
/ 23 января 2010

сохраните этот json в файл и создайте ссылку на него в настройках плагина автозаполнения.

0 голосов
/ 23 января 2010
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...