Jump to content

SUBIECTE NOI
« 1 / 5 »
RSS
Dade, dade

Parola la lock screen

Deparazitare externa pisici fara ...

Seriale turcesti/coreene online H...
 Merita un Termostat Smart pentru ...

Sfat achizitie MTB Devron Riddle

Problema mare cu parintii= nervi ...

switch microtik
 Permis categoria B la 17 ani

Sfaturi pentru pregatirea de eval...

Crapaturi placa

cum imi accesez dosarul electroni...
 Momentul Aprilie 1964

Sursa noua - zgomot ?

A fost lansat Ubuntu 24.04 LTS

Pareri apartament in zona Berceni?
 

Afisare date din json

- - - - -
  • Please log in to reply
6 replies to this topic

#1
colombo2003

colombo2003

    Senior Member

  • Grup: Senior Members
  • Posts: 6,312
  • Înscris: 16.07.2008
Ma confrunt cu urmatoarea problema: nu reusesc sa citesc corect si sa afisez dintr-un json niste date...

Codul sta in felul urmator:
HTML:

...
...
<body>
...
...
niste divuri (pentru antet)

<script>
$(document).ready(function() {
var items = [];
$.getJSON('/js/meniu.json', function(json) {
  $.each(json.restos, function(index, orders) {
	$.each(this, function() {
		$.each(this, function() {
			items.push('<div class="nume">'+this.name +'</div>'+"\n");
		});
	});
  });
  $('<div>', {
	"class":'resto',
	html:items.join('')
  }).appendTo("body");
});
</script>
</body>
</html>


Fisierul JSON (se numeste meniu.json si se alfa intr-un folder js):
{
	"restos":[{
			"Resto1":[{
				"name":"nume1",
				"address":"strada 1",
				"tel":"0211",
				"email":"email1@email",
				"web":"www1",
				"pic":"img/rest.jpg"
			}],
			"Resto2":[{
				"name":"nume2",
				"address":"bd2",
				"tel":"0722",
				"email":"email2@",
				"web":"www2",
				"pic":"img/rest.jpg"
			}]
		}
	]
}


Cand vizualizez pagina, nu mi se afiseaza nimic. Ce anume este gresit?
Multumesc.


PS.
1) Oare scriptul nu trebuie pus ultimul?
2) Mai trebuie sa inchid separat div-ul creat in <script>?

#2
vladdy99

vladdy99

    Senior Member

  • Grup: Senior Members
  • Posts: 3,034
  • Înscris: 03.05.2006
pune un consol log inainte de $.each si vezi ce iti aduce functia in json.

#3
maxtron_69

maxtron_69

    Senior Member

  • Grup: Senior Members
  • Posts: 2,534
  • Înscris: 18.08.2010
pot sa te intreb de ce nu faci un jsfiddle sau codepen?

#4
maxtron_69

maxtron_69

    Senior Member

  • Grup: Senior Members
  • Posts: 2,534
  • Înscris: 18.08.2010
https://jsfiddle.net/bg17aw/L8p76ev3/

mie codul urmator imi functioneaza:

<!doctype html>
<html>
	<head>
		<script
			src="https://code.jquery.com/jquery-1.12.4.min.js"
			integrity="sha256-ZosEbRLbNQzLpnKIkEdrPv7lOy9C27hHQ+Xp8a4MxAQ="
			crossorigin="anonymous">
		</script>
 
	</head>
	<body>
	  <script>
			var test = {
				"restos": [{
						"Resto1": [{
								"name": "nume1",
								"address": "strada 1",
								"tel": "0211",
								"email": "email1@email",
								"web": "www1",
								"pic": "img/rest.jpg"
							}],
						"Resto2": [{
								"name": "nume2",
								"address": "bd2",
								"tel": "0722",
								"email": "email2@",
								"web": "www2",
								"pic": "img/rest.jpg"
							}]
					}]
			}
			$(function () {
				var items = [];
				function test1(json) {
					$.each(json.restos, function (index, orders) {
						$.each(this, function () {
							$.each(this, function () {
								items.push('<div class="nume">' + this.name + '</div>' + "\n");
							});
						});
					});
					$('<div>', {
						"class": 'resto',
						html: items.join('')
					}).appendTo("body");
				}
				;
				test1(test);

			});
		</script>
	</body>
</html>


nu e cazul sa scrii $(document).ready(function()", $(function(){}) e suficient

#5
colombo2003

colombo2003

    Senior Member

  • Grup: Senior Members
  • Posts: 6,312
  • Înscris: 16.07.2008
Ma gandesc ca poate mai am nevoie sa il folosesc si in alte pagini, si sa nu copiez de fiecare data variabila test dupa mine, in fiecare pagina.
Plus ca daca mai e neveoi de modificat ceva in fisier, sa se faca o singura data si nu in toate paginile in care ar aparea.

Asadar s-ar putea oare ca valoarea lui test sa fie intr-un fisier .json separat si pe el sa il apelez?
Multumesc.

#6
colombo2003

colombo2003

    Senior Member

  • Grup: Senior Members
  • Posts: 6,312
  • Înscris: 16.07.2008
@maxtron69: Posted Image  Functioneaza impecabil! Multumesc maestre. Raman dator! Posted Image


Legat de cealalta problema, gata, am gasit!

Se pun datele intr-un fisier cu extensia .json si apoi, in pagina html, se adauga la sfarsitul paginii, inainte de </body> referinta despre fisierul json creat:
<script scr="cale/nume_fisier.json"></script>



PS. Rezolvat, se poate inchide! Multumesc.

#7
dani.user

dani.user

    Guru Member

  • Grup: Senior Members
  • Posts: 30,238
  • Înscris: 24.02.2007
Invata sa folosesti debugger-ul, iti arata imediat unde e problema.

Anunturi

Neurochirurgie minim invazivă Neurochirurgie minim invazivă

"Primum non nocere" este ideea ce a deschis drumul medicinei spre minim invaziv.

Avansul tehnologic extraordinar din ultimele decenii a permis dezvoltarea tuturor domeniilor medicinei. Microscopul operator, neuronavigația, tehnicile anestezice avansate permit intervenții chirurgicale tot mai precise, tot mai sigure. Neurochirurgia minim invazivă, sau prin "gaura cheii", oferă pacienților posibilitatea de a se opera cu riscuri minime, fie ele neurologice, infecțioase, medicale sau estetice.

www.neurohope.ro

0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

Forumul Softpedia foloseste "cookies" pentru a imbunatati experienta utilizatorilor Accept
Pentru detalii si optiuni legate de cookies si datele personale, consultati Politica de utilizare cookies si Politica de confidentialitate