JS/HTML - funkcja wypisująca wartości od 1 do liczby n, wpisanej w polu tekstowym

0

Witam. Jest to mój pierwszy wątek na forum, więc proszę o wyrozumiałość.
Napisałem prosty program, który powinien wypisywać wartości od 1 do n, która podana jest w polu input (domyślnie ustawiona na 55)

<!DOCTYPE=HTML>
    <html lang = "pl">
        <head>
            <meta charset="utf-8">

            <title>Test</title>

            <style>
                    div{border: 1px solid black;}
            </style>
        
        </head>
        
        <body>
                <button onclick="funB3()">1 .. n</button>
                <div id='ramka'></div>
                n=<input name='n' value=55 type=number>



        </body>
        
        <script>
          function funB3()
        {
            var z = document.querySelector("ramka")
            var liczba = " ";
            var n = querySelector('input').value;
            n = Number(n);
            for (let i = 1; i<=n ; i++ )
            {
                liczba = liczba+i+" ";
            }
            z.innerHTML = liczba;
        }
        </script>

Problem w tym ze po kliknięciu na przycisk nic sie nie dzieje. Z góry dziękuje za pomoc!

1

Wywołujesz funkcję, która nie istnieje: funB2()

1

Po drobnych poprawkach, u mnie działa:

function funB3()
        {
            var z = document.getElementById("ramka");
            var liczba = " ";
            var n = document.querySelector('input').value;
            n = Number(n);
            for (let i = 1; i<=n ; i++ )
            {
                liczba = liczba+i+" ";
            }
            z.innerHTML = liczba;
      
0

Na przyszłość poczytaj sobie też o addEventListener :) Ma wiele fajnych opcji których nie zyskasz przy onClick()
czyli w twoim przypadku zamiast

<button onclick="funB3()">1 .. n</button>

napisz sam <button>1..n</button>
a w script zapisz dodatkowo tak

Tutaj twoja funkcja :)
pod nią:
const button = document.querySelector("button").addEvenetListener("click", nazwa twojej funkcji **Uwaga tutaj piszesz nazwe funkcji bez nawiasów () bo to nie jest wywołanie!!**);


1 użytkowników online, w tym zalogowanych: 0, gości: 1