Vreau să implementez structura de aici, http://prnt.sc/ayfyk2
Codul este pus pe codepen, http://codepen.io/CostiCampean/pen/qZJerx
De ce îmi zice: spotTheSelect is null ?
Poate vroiai sa folosesti
document.getElementById(currentID);
in loc de
document.getElementById("currentID");
În documentația de pe MDN îmi zice să folosesc apostroafe când setez argumentele pentru metode. Am încercat și cum mi-a recomandat Sergiu dar nu se schimbă nimic.
function return_selected(currentID) { var spotTheSelect = document.getElementById(currentID); var valueSpot = spotTheSelect.options[spotTheSelect.selectedIndex].value; return valueSpot; }
In codul asta, currentID
este un parametru pe care il primeste functia return_selected
, deci nu trebuie sa folosesti apostroafe.
Nu e codul complet pe CodePen, nu-mi dau seama ce sunt row11
, row12
etc.
Vezi în tabul de html. Cu row111, row12 am targhetat fiecare select de pe pagină.
Ok.
http://pastebin.com/cygdTchZ aici ai codul corect.
In primul rand, ti-am pus un id pe <span id="price" class="first-price">
.
In al doilea rand, document.getElementById('price').innerHTML = "$" + calcPrice;
aici iti referentez id-ul adaugat, getElementByClassName = a big nono.
In al treilea si ultimul rand, nu ai nevoie de :
return_selected('row11'); return_selected('row12'); return_selected('row13');
Si de fiecare data cand folosesti row11, row12 si row13, pune-le intre ghilimele.
LE: mai ai de invatat Javascript, dar imi place ca nu te-ai aruncat direct in Angular sau React, ca altii. Esti pe calea cea buna
@voxspace Merci pentru timpul acordat și încurajări. Am făcut modificările postate mai sus și tot nu îmi pune $9000 in spanul cu id ul price. Am pus și un console.log dar nu îmi returnează ceva in inspector…
Nu-i pb, imi face placere.
http://codepen.io/anon/pen/bpQNGJ Uite aici pus codul pe codepen, cand selectezi ceva prin dropdown-uri, iti calculeaza ultima valoare. E ok asa?
Este aproape de cum imi doresc să se comporte selectul. Vreau să-mi afișeze un rezultat și by default imediat ce se încarcă pagina.
LE: am adăugat document.addEventListener("DOMContentLoaded", combine_selected);
și merge ca uns.