JavScript: Túl sok ' és " karakter miatti káosz
2020-11-15T14:14:45+01:00
2020-11-15T14:50:44+01:00
2022-08-11T23:00:30+02:00
SwoMark
Üdv,

Egy olya funkciót szeretnék elkészíteni, hogy mikor egy selectben kiválasztok egy elemet, majd enterrrel eventet indítok, akkor beírva egy input-textbe  választott értéket, egy textreaba pedig új sorba egy szöveget. 

Ez eddig meg is lenne, viszont szeretnék egy olyat is , hogy amikor kiválasztom az elemet akkor egy span-ba megnézi, hogy van-e már az adott ID-vel gomb, ha nincs, készít egyet ami egy sima div vagy a. 

Ennek a gyorsgomb lenyomásával ugynazt tudom elő idézni mint select option válsztás + enterrel, amikor sok az ismétlődő szín. :)

Elméletileg ez is működik, de mivel sok ' és " van ezért belekvarodik és nem fut le rendesen.

Hogy lehetne megoldani?

function addColorByButton(c, desc, HTMLcolor){ var BtnContainer = document.getElementById('colorFastAdderContainer'); BtnContainer.innerHTML='Kesz'; } function addColor(c, desc, HTMLcolor){ if( event.which == 13 || event.keyCode == 13 ){ // ENTER NYOMÁSRA INDÍTOTT EVENT. var BtnContainer = document.getElementById('colorFastAdderContainer'); var input = document.getElementById('new_product_colors'); var show = document.getElementById('new_product_colors_check'); if( input.value == '' ){ input.value=c; show.value=desc; }else{ input.value=input.value+'-'+c; show.value=show.value+'\n'+desc; } if ( document.getElementById(c) == null ){ BtnContainer.innerHTML = BtnContainer.innerHTML+'<a onClick="addColorByButton("'+c+'","'+desc+'","'+HTMLcolor+'\");" class="color" id="'+c+'" style="margin:2px; padding:2px; text-decoration:none; color:black; cursor:pointer; background-color: '+HTMLcolor+';"><b>'+desc+'</b></a><br>'; } } }}

Köszi előre is a segítséget.
Mutasd a teljes hozzászólást!
Az alap megoldás, hogy a template stringet  használod, akkor:

` <a onClick="AddColorByButton(${c},${desc},${color})"> <span>${desc}</span> </a> `;

de ez igazából hosszú távon nem segítség, mert így mindent kézzel csinálsz, és ugyan összeraksz szépen stringeket, de ennél nem jutsz tovább, bár ez is több mint a semmi.

Az 1 fokkal kényelmesebb megoldás, ha fogsz egy reak framework-öt és azzal rakod össze az oldalad, annak van egy tanulási görbéje, de utána sokkal tisztább, szárazabb érzés.
Mutasd a teljes hozzászólást!

Tetszett amit olvastál? Szeretnél a jövőben is értesülni a hasonló érdekességekről?
abcd