Tak jak w temacie, jak mogę zrobić, aby pętla 'zapętlała' się co 1s?
Jak zrobić, aby pętla odświeżała się co sekundę?
- Rejestracja: dni
- Ostatnio: dni
1
setInterval()
Opis + przykład: https://www.w3schools.com/js/js_timing.asp
- Rejestracja: dni
- Ostatnio: dni
- Postów: 487
0
A dlaczego po takim kodzie:
setInterval(function ilosc()
{
const numer = 0;
while(numer < 15)
{
const ilosc = document.getElementById('ilosc'+numer).value;
const cenastara = document.getElementById('cenatab'+numer).innerHTML;
const cenanowa = cenastara * ilosc;
document.getElementById('cenatab'+numer).innerHTML = cenanowa;
numer++;
}
}, 2000);
Pokazuje:
TypeError: invalid assignment to const `numer'
- Rejestracja: dni
- Ostatnio: dni
- Lokalizacja: Wrocław
- Postów: 13042
1
const służy do deklarowania stałych ("zmiennych", których wartości nie można modyfikować) - zamień to na let.
- Rejestracja: dni
- Ostatnio: dni
- Postów: 487
0
Ok, tutaj jak to wszystko powstaje:
foreach ($odkodowana as $odkodowanyProdukt)
{
if (mb_strlen($odkodowanyProdukt) === 0)
{
continue;
}
$zapytanie = "SELECT cena FROM produkty WHERE nazwa = '".$odkodowanyProdukt."'";
$wynik = mysqli_query($connect, $zapytanie);
while ($row = $wynik->fetch_assoc())
{
$numer = 0;
echo "
<tr class='wiersz'>
<td class='rekord'>".$odkodowanyProdukt."</td>
<td><input type='text' name='ilosc' id='ilosc".$numer."' placeholder='...'/><input type='submit' name='dodajilosc' value='+' onClick='ilosc()'/></td>
<td class='rekord'><div id='cenatab".$numer."'>".$row['cena'];"</div></td>
</tr>";
$numer++;
}
}
A tu js:
setInterval(function ilosc()
{
let numer = 0;
while(numer < 15)
{
const ilosc = document.getElementById('ilosc'+numer).value;
const cenastara = document.getElementById('cenatab'+numer).innerHTML;
const cenanowa = cenastara * ilosc;
document.getElementById('cenatab'+numer).innerHTML = cenanowa;
numer++;
}
}, 2000);