JQuery: вопрос об автозаполнении и ключах - PullRequest
0 голосов
/ 04 марта 2011

У меня есть множественный выбор и автозаполнение ввода.Каждый раз, когда пользователь вставляет элемент в автозаполнение ввода, я хотел бы выбрать соответствующий элемент в множественном выборе.

У меня есть этот код:

jQuery("#example")
.autocomplete('autocomplete', jQuery.extend({}, {
dataType: 'json',
parse: function(data) {

  var parsed = [];
  for (key in data) {

     parsed[parsed.length] = { data: [ data[key], key ], value: data[key], result: data[key] };
  }

  return parsed;

  }
}, {multiple:true}))
.result(function(event, data) {
 $("#select option[value=" + key + "]").attr("selected", true);


});

Функция автозаполнения возвращает данные такого типа:

{"17":"element_17","18":"element_18"}

Проблема: значение «ключа» (value=" + key + ") всегда 18, даже когда я выбираю element_17.

Есть идеи, что мне изменить / добавить?

С уважением

Javi

1 Ответ

0 голосов
/ 04 марта 2011

Итак, что происходит, вы неправильно форматируете свои данные для автоматического завершения.

вы хотите, чтобы каждый элемент автозаполнения выглядел как

{ 'key' : '17', 'value' : 'element 17' }

И вам нужно было бы отправить массив элементов, который выглядит следующим образом

[ { 'key' : '17', 'value' : 'element 17' },
  { 'key' : '18', 'value' : 'element 18' } ]
...