Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [HTML]multiple select i dodawanie do tablicy array w JS, wskazuje tylko na pierwszy element z listy
casperii
post
Post #1





Grupa: Zarejestrowani
Postów: 681
Pomógł: 28
Dołączył: 14.08.2014

Ostrzeżenie: (0%)
-----


Proszę o spojrzenie w kod i ewentualne naprowadzenie mnie gdzie robię błąd. Przy każdej próbie zaznaczenia wyboru z listy multiple select pojawia mi się wartość tylko pierwszego elementu z listy.
Poniżej kod:

  1. var myarray = new Array();
  2. function getSelectedDataAttribute(event) {
  3. var selected_value = event.options[event.selectedIndex].value;
  4.  
  5. myarray.push(selected_value);
  6. alert(myarray);
  7. }


oraz
  1. <select onchange="getSelectedDataAttribute(this)">
  2. <option value="1">zima</option>
  3. <option value="2">wiosna</option>
  4. <option value="3">lato</option>
  5. <option value="4">jesień</option>
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
casperii
post
Post #2





Grupa: Zarejestrowani
Postów: 681
Pomógł: 28
Dołączył: 14.08.2014

Ostrzeżenie: (0%)
-----


@nospor no i wszystko jasne (IMG:style_emoticons/default/smile.gif) dzięki naprowadziłeś mnie

edit, coś nadal bierze tylko pierwszy element ale dublowany tyle razy ile zostanie wybrana opcja z selecta.

HTML:
  1. <form action="" method="post" id="run">
  2. <select onchange="getSelectedDataAttribute(this)">
  3. <option value="1">zima</option>
  4. <option value="2">wiosna</option>
  5. <option value="3">lato</option>
  6. <option value="4">jesień</option>
  7. <input type="hidden" name="ukrytePole">
  8. <button type="submit">zapisz</button>
  9. </form>



JS:
  1. var myArray = new Array();
  2. function getSelectedDataAttribute(event) {
  3. var selected_value = event.options[event.selectedIndex].value;
  4. myArray.push(selected_value);
  5.  
  6. console.log(myArray);
  7. document.getElementById('ukrytePole').value = myArray
  8. }
  9.  
  10.  
  11. document.addEventListener('submit', function(e){
  12. const form = document.querySelector("#run")
  13. const tablica = form.ukrytePole.value
  14. const data = {
  15. tablica: tablica
  16. };
  17. });


console.log
  1. ['9']
  2. (2) ['9', '9']
  3. (3) ['9', '9', '9']


Ten post edytował casperii 9.06.2022, 20:12:47
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 14.10.2025 - 21:02