Tarkoitus olisi valita option listasta tuotemalli, jonka tiedot on laitettu optionin attribuutteihin. Tuotemalliin voi sisältyä n kpl "lisätuotteita", jotka tulostan html:n seuraavasti: lisatuote[0]=2 lisatuote[1]=5 jne.
Kun valinta tehdään tulisi lisätuotteet käydä läpi ja merkitä lomakkeelle. itse hahmottelin seuraavanlaisen valitsimen, mutta en keksi kuinka viitata juuri kyseiseen attribuuttiin:
$('#kantatuote option:selected[attr^.lisat]').each(function() {
alkuperäinen ajatus oli tallettaa lisätuotteiden ID:t taulukkona mutta senkään läpikäyminen ei alkanut onnistua.
Luovutin ja pistin yhteen attribuuttiin pilkuilla eroteltuina, ja tämän taulukon kävin läpi silmukalla.
En ymmärrä selostuksestasi, miten nämä lisätuotteet on attribuuteissa lueteltu ja mitä elementtejä haluaisit valitsimella hakea. Voitko antaa jonkin konkreettisen esimerkin (päätuotteen option-tagin ja kaikki lisätuotteisiin liittyvät tagit)?
Valitsimella et voi kuitenkaan hakea elementtejä toisen elementin sisällön perusteella, vaan haettavien pitäisi olla valitun optionin sisällä ($("option:selected .lisatuote")). Muuten joudut erikseen hakemaan valitun arvon ja sitten vasta siihen liittyvät lisätuotteet, mikä on minusta kuitenkin varsin helppoa ja kätevää:
<select> <option value="3">Kasvispaketti</option> </select> ... <jokin class="lisatuote tuotteelle_3">Peruna</jokin> <jokin class="lisatuote tuotteelle_3">Porkkana</jokin> ... $(".lisatuote.tuotteelle_" + $("select").val())
lisätuotteita 0-n kappaletta joka tuotemallilla
alkuperäinen versio:
<option value="1" tukkuhinta="1.56" nettohinta="1.46" vahhinta="3.5" tuotantomaa="FI" lisatuotteet[0]="1" lisatuotteet[1]="6" lisatuotteet[2]="8"> Tuotemallin nimi</option>
Nuo kaikki muut sain helposti paikoilleen tuolta seuraavilla loitsuilla:
$('#tukkuhinta').val($('#kantatuote option:selected').attr('tukkuhinta'))
Lisätuotteet muotoilin lopulta näin
lisatuotteet="1,6,8"
ja sitten javascriptillä muotoilin arrayn
Aihe on jo aika vanha, joten et voi enää vastata siihen.