Hirdetés

Új hozzászólás Aktív témák

  • biker

    nagyúr

    válasz Sk8erPeter #3014 üzenetére

    Egyébként a PHP-kód vonatkozó részénél, amikor macskakaparásos idézőjelet kell használnod egy stringben, szerintem nyugodtan kihasználhatnád, hogy a stringeket aposztróffal is írhatod, és úgy nincs változó-behelyettesítés sem, így nem kell escape-elni az idézőjelet sem, tehát:

    Megfogadható... a " " jelet használni annyiból kedvezőbb nekem, hogy egy $valami behelyettesítéséhez nem kell azonnal '.$valami'. írni, mint ' ' esetén, de ebből a szempontból teljesen érthető

    Na, szóval a kód érdemi részére rátérve:
    - Eleve rossz, hogy PHP-vel generálsz komplett JS-kódot, mert ott biztos, hogy valami koncepcionális hiba van, és lehetne sokkal általánosabban.
    - Ha már ilyen megoldást választottál, és generálsz mindent, miért drótozod be az elemek számát a ciklusban? Lásd $i<16 --> miért pont 16? Miért nem egy változó van ott? Ha egyébként JS-kódbeli ciklusban szerepelne, az is rossz lenne, mert itt egy ismeretlen nagyságú valaminek a kalkulált hossza kellene, hogy szerepeljen, nem egy konkrét, bedrótozott szám. Ha valami be van drótozva, akkor ott gondolkodni kell, hogy miért is van az ott bedrótozva. :D Szóval most igazából elkövetted pont azt a hibát, amiről a korábbiakban beszélgettünk. :D

    Van 15 input type=text mező, termek_ean_1, termek_ean_2 ..... termek_ean_15
    Ha az ezek akármelyikébe beírt eseményt akarom figyelni, akkor kell egy onChange(#termek_ean1).... 15-ig esemény nem? Akkor 15x ki kell írni, vagy van rá jobb megoldás, hogy tudjam, a mondjuk 8-as mezőbe épp beírtak valamit, és ha igen, akkor írjunk ki valamit a lapra?
    Ha van, mi az?

    - Minden egyes termékazonosítóhoz legenerálsz egy-egy külön anonim event handlert. Minek?

    Nem, a beviteli mezőkhöz írok ilyet, a termék azonosítók (2-300 vonalkód) a tömbben vannak, amiknek a key/value párját keresem a onChange eseményre

    Meg lehetne oldani az egészet class-szal (class-okkal), és mindegyikhez egy darab általános event handler tartozhatna. A kódod semmi olyat nem tartalmaz, amit ne lehetne egy ilyen eseménykezelővel megoldani.
    Meg amúgy a kimeneti, legenerált JS-kódod tele lesz var value1, var value2, ... var value15 jellegű változókkal, ami gondolom nem kell mondani, hogy igen csúf.
    (Amúgy még így pluszban nem tudom, mennyire jó ötlet, hogy mindig hozzáfűzögeted a #bufe_uzenet elem tartalmához az aktuálisan becsippantott kódot. Érdekel valakit az előző akárhány becsippantott elem?

    Igen, érdekli. Így kérte...

    Mert ha igen, akkor is talán mehetne egy kinyitható, logolós részbe, mert így ránézésre zavaró lehet, hogy nem egyértelmű, az adott pillanatban mit csippantott be valaki.)

    Te hogy oldanád meg, hogy van mondjuk 100 terméked egy lapon (de ide most csak 5-öt teszek be, ne floodoljam szét
    var termek_jq = {"5999076200337" : "AAKG Shock Extreme narancs 25 ml: 210Ft / db " , "4005906404569" : "Active O2 áfonya: 550Ft / db " , "4005906005582" : "Active O2 alma: 550Ft / db " , "4005906404545" : "Active O2 alma-kiwi: 550Ft / db " , "4005906005032" : "Active O2 citrom: 550Ft / db " , "4005906004752" : "Active O2 maracuja-alma: 550Ft / db " };

    És van mondjuk 15db input meződ, ahova a vonalkódokat csipogtathatja (azért nem egy mező, mert termékenként a darabszámot is meg kell adni, és a termékenkénti kedvezmény beütése is kérve vagyon, így soronként van egy termek_ean, egy termek_db és egy termek_kedv mező, ezeket mind egy tömbbe gyúrva adom át posttal.
    Tehát akármelyik mezőbe írsz be valamit, keresse meg ebben a tömbben a párját, és írja ki a szöveget
    A php ciklus pont amúgy ezt generálja le,
    var value1 = $("#termek_ean_1").val();
    $("#termek_ean_1").change(function(){
    var value1 = $(this).val();
    $('#bufe_uzenet').append("<p>" + termek_jq[value1] + "</p>");
    });var value2 = $("#termek_ean_2").val();
    $("#termek_ean_2").change(function(){
    var value2 = $(this).val();
    $('#bufe_uzenet').append("<p>" + termek_jq[value2] + "</p>");
    });var value3 = $("#termek_ean_3").val();
    $("#termek_ean_3").change(function(){
    var value3 = $(this).val();
    $('#bufe_uzenet').append("<p>" + termek_jq[value3] + "</p>");
    });var value4 = $("#termek_ean_4").val();
    $("#termek_ean_4").change(function(){
    ...........

    Na egy ilyet hogy lehet akkor szebben, olvashatóbban megírni, azon kívül, hogy a 15 elem kérdést kirakom külön változóba, hogy átírhassam bármikor 35-re mondjuk

    Elektromos autó töltő berendezések | Mesterséges növényvilágítás | Mai ajánlatunk: www.gerisoft.hu | www.e-autotoltokabel.hu | www.agrar-vilagitas.hu |

Új hozzászólás Aktív témák