Tworzę tę aplikację, która pomaga ludziom grać w Yahtzee bez kości. Zasadniczo jest to generator liczb losowych wyświetlany wizualnie w DOM.
Próbuję dodać jakąś dodatkową funkcjonalność, pozwalając graczom klikać wygenerowane liczby, które są przechowywane w DOM w elementach przycisków. Klikając na nie, zapisuje ten numer w polu wprowadzania tekstu poniżej.
Próbowałem wielu różnych rzeczy, aby wkleić wartość w polu wejściowym, ale wydaje się, że nic nie działa ani nie generuje żadnych błędów. Rejestrowanie wartości w konsoli po kliknięciu działa dobrze.
Wyjaśnienie TLDR w wideo (przepraszam za gówniany dźwięk): https://www.loom.com/share/449c370364b448349e20a06085da
Link do Github: https://github.com/Roaldkamman/Portfolio_YahtzeeDice
Najważniejszy fragment kodu, który próbuję naprawić:
$(".dice-button").on("click", ".btn_1", function() {
$(".myInput").value = this.textContent + ", ";
});
Jak działa logowanie do konsoli:
$(".dice-button").on("click", ".btn_2", function() {
console.log(this.textContent);
});
Z góry dziękuję za pomoc! :)
2 odpowiedzi
.value
jest właściwością elementu wejściowego HTML, a nie obiektu jQuery. Dlatego należy albo użyć .val()
jQuery, aby ustawić wartość, albo pobrać kod HTML element z obiektu:
$(".myInput").val(this.textContent + ", ");
...lub:
$(".myInput")[0].value = this.textContent + ", ";
W jQuery użyj metody val()
w elemencie wejściowym
$(".myInput").val(this.textContent + ", ")