Как уже упоминалось, единственный способ - использовать плагин, который заменяет функциональность .
Список плагинов jQuery: http://plugins.jquery.com/tag/ select /
Взгляните на пример с помощью плагина Select2
: http://jsfiddle.net/swsLokfj/23/
К сожалению, JSON до сих пор вызывает много путаницы. JSON - это текст . Текст, который использует синтаксис, очень похожий на то, как объекты определяются в JavaScript.
Код, который вы используете, использует json: true
и Request.get
, следовательно, анализирует ответ в объект для вас. Это становится понятным, когда вы используете if (body['success'])
, поскольку, если бы ответ API был строкой, не было бы свойства success
.
Это означает, что JSON теперь полностью отсутствует, мы имеем дело только с объектами JavaScript. Мы можем получить доступ к их свойствам, используя точечные или скобочные обозначения, и создать новые.
Вот код, который будет захватывать первые 5 элементов и регистрировать результат:
const Request = require("request");
Request.get("http://csgobackpack.net/api/GetItemsList/v2/", { json: true }, (error, response, body) => {
// body contains the JSON reply already parsed into a JS Object
csgo = new Object();
if (body['success']) {
var limit = 5;
for (let key in body.items_list) {
// shorter way to grab multiple properties
const { icon_url, exterior } = body.items_list[key];
// add child to csgo
csgo[key] = { icon: icon_url, exterior }; // OR: exterior: exterior
if (--limit === 0) break;
}
console.log(csgo);
}
});
Ключевой частью является
csgo[key] = { icon: icon_url, exterior };
Новое свойство добавляется к объекту и устанавливается на указанный литерал объекта.