Tomasz L.

Tomasz L. informatyk

Temat: json pobranie danych

mam taki plik z danymi pochodzącymi z mysql i zakodowanymi poprzez json_encode (php)
[
{
"0":"SJ1",
"Name":"SJ1",
"1":"0",
"Value":"0"
},
{
"0":"SJ2",
"Name":"SJ2",
"1":"0",
"Value":"0"
}
]

Chciałbym teraz wyciągnąć Value dla konkretnego Name
kombinowałem wedle tego przepisu http://www.phpeveryday.com/articles/jQuery-AJAX-and-JS...
ale bez sukcesu
Może ktoś podpowie jak to wyciągnąć do javascript albo jquery?

konto usunięte

Temat: json pobranie danych

najpierw musisz to przekonwertować te dane tekstowe ("JSON") do obiektu JavaScript, np. funkcja jQuery.getJSON automatycznie ci to przekonwertuje.
http://api.jquery.com/jQuery.getJSON/

później wygodnie użyć funkcji filter do przeszukania tablicy, coś na zasadzie:

function findObject(haystack, property, needle) {
var result = haystack.filter(function (item) {
return item[property] == needle;
})[0];
return result || {};
}

a później np.

var value = findObject(nazwaZmiennejWKtorejMaszDane, 'Name', 'SJ2').Value;
Dawid Lizak

Dawid Lizak Frontend Developer

Temat: json pobranie danych

Jeszcze wersja, kiedy musisz wspierać IE8 i nie masz możliwości użycia metody filter():
function findObject(haystack, property, needle) {
for (var i = 0, haystackLen = haystack.length; i < haystackLen; i++) {
if (haystack[i][property] === needle) {
return haystack[i];
}
}
return {};
}

Następna dyskusja:

zczytywanie z URL danych po...




Wyślij zaproszenie do