Wątek przeniesiony 2020-10-01 19:04 z Java przez Patryk27.

Powtarzanie wpisanego przez użytkownika tekstu

0

Witam, zacznę od tego, że jestem tu nowy a do założenia konta skłoniła mnie bezradność. Proszę o pomoc z zadaniem domowym a mianowicie napisaniem strony, która po załadowaniu wyświetla 2 komunikaty(prompt). Jeden prosi o liczbę a drugi prosi o imię. Po wypełnieniu obu promptów, skrypt napisany w JS ma wyświetlić imię tyle razy, jaką liczbę podano w pierwszym komunikacie. Moja strona wygląda tak:

<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<div id="WYN"></div>
<script>

var id1 = prompt("wpisz liczbę");
var id2 =  prompt("wpisz Imię");

function petla(){

for (var i=0; i < id1; i++) {console.log(id2)}

}

function wynik(){
WYN.innerHTML = petla();
}

</script>
</body>
</html>

Proszę o pomoc, ewentualnie podpowiedź

1

Wywołaj

petla() po zebraniu odpowiedzi ewentualnie wyrzuć function petla(){} i zostaw tylko pętlę (ciało tej funkcji).

1

Usunąłem function petla(){} i zostawiłem samą pętlę ale dalej nie działa

funckję wynik też usunąłem

Wiesz może jak wyciągnąć value prompta? bo pewnie nie pobiera. Próbowałem zrobić var id1 = prompt("wpisz liczbę").value oraz for (var i=0; i < id1; i++) {console.log(id2.value)}; ale to dalej nic nie daje.

1

działa ok, wyświetla na consoli N razy (zgrupowane)

var id1 = prompt("wpisz liczbę");
var id2 = prompt("wpisz Imię");

for (var i=0; i < id1; i++) {
    console.log(id2)
}

I pisz w 1 poście ;)

0

Niestety nadal nie działa

1
Patryk Salamon napisał(a):

Niestety nadal nie działa

A co Ci wyskakuje na konsoli?

1

Zdajesz sobie sprawę że twoja funkcja pętla nic nie zwraca?

1

dobra, my bad :D zainspirowałem się tym console logiem i myślałem że chcesz to wyświetlić na konsoli, a nie wrzucić w DOMa

W najprostszej wersji coś takiego.

var id1 = prompt("wpisz liczbę");
var id2 = prompt("wpisz Imię");

var element = document.getElementById("WYN");
for (var i=0; i < id1; i++) {
	element.innerText += id2;
}

Chociaż pewnie lepiej byłoby robić innerText += tylko raz już na całości złączonego tekstu, ale to już pomijam jak to wydajnościowo najlepiej zrealizować.

0

Działa, bardzo dziękuję za pomoc :D

0

No, kolega się ucieszył, a zaraz pewnie wróci znowu, bo nie wywołuje nigdy funkcji wynik :D

3
'orgazm'.repeat(4)

w ten sposób możesz napisać coś wiele razy

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