Wpis z mikrobloga

kolejne pytanie z serii #pomusz studentom przetrwać sesję
#html #css #javascript

mam sobie listę drop-down i jak wybieram coś z niej i klikam "dodaj" to value tej opcji pokazuje się w innej liście obok.
no i fajnie wszystko tylko ja bym chciała żeby zwrócił mi value w checkbox, a nie tylko samo słowo w html.

uproszczone, wygląda to jak tutaj ale działa na tej samej zasadzie
https://www.w3schools.com/jsref/tryit.asp?filename=tryjsref_select_value2

#kiciochpyta #pytanie #pomusz #webdesign #projektowaniestron

aha i takie małe PS. nie bijcie że nie używam jakichś ułatwiaczy w formie frameworków, nie robię tego bo mi nie wolno #studbaza :(
PPS. nie bijcie że głupie pytania, nie jestem #programista15k i nigdy nie będę, a projekt ma być zaliczony xD
  • 22
@japer: @virus-t: w obu przypadkach muszę napisać pusty checkbox o ile się nie mylę? no i jak ten jeden checbox jest "użyty" to już nie ma następnego

#!$%@? dałabym codepena ale gówno nie chce mi się skopiować XD to jest bardziej skomplikowane
@PaulStanley: Dodaj sobie forma z id równym checkbox-list. Później odpalaj ten skrypt:

var cnt = 0;
function myFunction() {
let x = document.getElementById("mySelect").value;
let list = document.getElementById("checkbox-list");
let label = document.createElement("label");
let node = document.createElement("input");
node.type = "checkbox";
node.id = "chk_" + cnt;
label.for = node.id;
label.innerText = x;
list.appendChild(node);
list.appendChild(label);
let br = document.createElement("br");
list.appendChild(br);
cnt += 1;
}
@PaulStanley: Krok po kroku: odczytujemy wartość z selecta. Następnie dobieramy się do DOMa i szukamy naszego forma. Następnie tworzymy obiekt label, który doda nam opis do checkboxa. Każdemu z checkboxów nadajemy unikalne ID, ponieważ 1) taka jest definicja ID, 2) ono przydaje się do połączenia z labelem. Dodajemy checkboxa i labela obok siebie. Następnie dodajemy br, by oddzielić je nową linią. Zwiększamy licznik, bo dzięki niemu mamy
@PaulStanley: I generalnie kilka uwag
w HTMLu może istnieć tylko jeden element z unikalną nazwą id, tzn nie mogą być np dwa divy i nazywać się:
blabla
blabla
to jest błąd id elementu MUSI być unikalne.

Dodatkowo jak masz naście checkboxów, to nie mogą się one tak samo nazywać tj:
<checkbox name="abc" value="test1>
<checkbox name="abc" value="test2>
<checkbox name="abc" value="test3>
to też jest błąd bo zostanie w formularzu przesłana tylko ostatnia wartość
@japer: nie no ja #!$%@?łam bo są trzy listy i pobiera value z tej pierwszej oczywiście to raz. ale to mogę poprawić i po prostu wrzucić wszystko w jeden dropdown. to jest vice tego podstawowego kodu

potem jak dodałam twój (oczywiście zmienione tagi i dodałam formę jak napisałeś) to nic już się nie robi xD
@virus-t: no właśnie napisałam że mea culpa bo pobiera value z 1 listy a są trzy o tym samym id, chciałam być sprytna a wyszło jak zwykle xD
więc skleję ten cały dropdown w jedno i to załatwi sprawę

to co, wywalić całe name= w każdej opcji?