Stack Overflow em Português Asked by deleting on February 5, 2021
Como faço para procurar dentro de um json um objeto com um determinado id
, esse processo deve ocorrer dentro de uma function $(document).on('click', 'li', function(){});
, e o id
a ser pesquisado vai ser o id
do elemento li
clicado, o resultado da pesquisa seria o retorno de todos os dados do elemento que possui o id
do li
clicado .
Bom acho que a explicação ta simples mas ta clara, desculpe eu não colocar código, na verdade eu quero ideias para que eu pesquise e aprende, se eu colocar o código aqui vou obter a resposta pronta, não é isso que eu quero, mas caso for necessário eu posto um código de exemplo aqui.
Para saberes o ID do elemento clicado basta fazer var id = this.id;
.
Se o JSON for uma array:
Neste caso tens de percorrer o array comparando o teu ID com a chave que precisas. No exemplo usei também a chave id
. O .find()
é util pois retorna o primeiro elemento da array que cumprir a verificação.
var json = [{id: 1}, {id: 2}];
$(document).on('click', 'li', function(){
var id = this.id;
var obj = json.find(function(_obj){
return _obj.id == id;
});
console.log(obj);
});
Se o JSON for um Objeto:
Neste caso imagino que queiras o sub-objeto e a coisa fica ainda mais simples.
var json = {id1: {foo: 'bar'}, id2: {foo: 'baz'}};
$(document).on('click', 'li', function(){
var id = this.id;
var obj = json[id];
console.log(obj);
});
Se esse JSON vier por exemplo por ajax podes fazer assim:
$(document).on('click', 'li', function(){
var id = this.id;
$.getJSON("../file.json", function(json){
// aqui podes usar um dos meus exemplos com Array ou Objeto
// usando a variável "json" da callback
});
});
Answered by Sergio on February 5, 2021
Get help from others!
Recent Answers
Recent Questions
© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP