Hirdetés
- gban: Ingyen kellene, de tegnapra
- Luck Dragon: Asszociációs játék. :)
- laskr99: DFI és DFI Lanparty gyűjteményem
- sziku69: Fűzzük össze a szavakat :)
- Lalikiraly: Kinek milyen setupja van?
- Oldman2: A KOReader ebook olvasó program
- sziku69: Szólánc.
- Sub-ZeRo: Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
- GoodSpeed: Pillangóhatás: F billentyű meghibásodása -új gamer számítógépasztal
- D1Rect: Nagy "hülyétkapokazapróktól" topik
Ú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.Szóval most igazából elkövetted pont azt a hibát, amiről a korábbiakban beszélgettünk.
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
Új hozzászólás Aktív témák
- PROHARDVER! feedback: bugok, problémák, ötletek
- Anglia - élmények, tapasztalatok
- Bemutatkozott a Poco X7 és X7 Pro
- One otthoni szolgáltatások (TV, internet, telefon)
- OLED TV topic
- Tippmix
- Hobby elektronika
- Projektor topic
- OFF TOPIC 44 - Te mondd, hogy offtopic, a te hangod mélyebb!
- Rezsicsökkentés, spórolás (fűtés, szigetelés, stb.)
- További aktív témák...
- Gigabyte RTX 4080 XTreme WaterForce 16GB GDDR6X Videokártya! BeszámítOK
- XBOX Series Shock Blue kontroller - Gar.: 2026.04 hó
- Mini PC - HP EliteDesk 800 G3 DM / i5-6500T / DDR4 / NVME M.2 / USB Type-C / több db / 27% számla
- 0perces! Samsung Galaxy Book5 Pro 360 2in1 Core Ultra 7 256V 16GB 1TB 16" WQXGA+ AMOLED TOUCH 1évgar
- NEUTRINO MINI HYPEX NC252MP 2x250W 4Ohm (2x150W 8Ohm) sztereó erősítő
- GYÖNYÖRŰ iPhone 11 64GB White -1 ÉV GARANCIA - Kártyafüggetlen, MS3348, 93% Akkumulátor
- Motorola Moto G32 / 8/256GB / Kártyafüggetlen / 12 Hó Garancia
- BESZÁMÍTÁS! ASUS B760M i9 12900K 32GB DDR4 1TB SSD RTX 3080 10GB ZALMAN S2 TG A-Data 750W
- Telefon felvásárlás!! Apple Watch Series 6/Apple Watch Series 7/Apple Watch Series 8
- Akció - Dell Latitude 5400 - i7 8665U, 8-16GB RAM, SSD, EU bill, számla, 6 hó
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: NetGo.hu Kft.
Város: Gödöllő