Dışarıdan çekilen JSON dosyasının içinden nasıl rastgele bir değer yazdırılır?

Katılım
10 Mart 2022
Mesajlar
1.250
Çözümler
48
Merhabalar, konuyu kısaca anlatmama gerekirse:

Elimde bir text.json adlı dosya var ve bunun içinde ki değerleri stringe çevireceğim. (Sanırım mantıken öyle.)
Sonra bu değerler arasında rastgele bir seçim yapıp bunu buton ile html'de bir <span>'in içine yazdırmam gerek. (E6, kütüphanesiz JavaScript ile..)

(Butona tıklandığın da 5 text'ten rastgele bir text seçilerek span etiketine yazdırılacak.)

JSON:
{
    "text_1": "Merhaba",
    "text_2": "Ben",
    "text_3": "Technopattan",
    "text_4": "Recep",
    "text_5": "Baltaş"
}

HTML:
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>

    <span id="text"></span>
    <button id="btn">Rastgele Text Getir!</button>
 
</body>
</html>

Teşekkürler!
 
Son düzenleme:
Direkt html ile yapmak pek mümkün değil. PHP kodu eklemeniz gerekir.

PHP:
$json = '{"text1":"Merhaba"}';
$json = json_decode($json, true);
echo $json['text1'];
 
Yapılması basit ama JSON dosyasını neden o şekilde yaptınız? Direkt array olarak tanımlarsanız iş kolaylaşıyor. text1-2 gibi numaralandırmanın bir sebebi var mı?
JSON:
[
    "Merhaba",
    "Ben",
    "Technopattan",
    "Recep",
    "Baltaş"
]
 
Kxaan hocanın da dediği gibi direkt array olarak tanımlarsanız işiniz kolaylaşacaktır.
Tamamdır diyelim ki öyle tanımladım fakat o senaryoyu nasıl canlandıracağım hakkında bilgim yok.
Bir fonksiyon oluşturup, math.floor(math.random) kullanarak falan bir şeyler düşündüm fakat beynim yetmedi.

1678910201569.png


Şurada ki .json'u xhr ile falan çekmeyi denedim derken falan falan baya karıştı. :D
Mantık hatası var gibi.
 

Technopat Haberler

Yeni konular

Geri
Yukarı
09:05:00