-
PROHARDVER!
JavaScript != Java (A JavaScript nem összekeverendő a Javával, két különböző programozási nyelvről van szó!)
Új hozzászólás Aktív témák
-
Sk8erPeter
nagyúr
Hehe, és tényleg, reprodukáltam a jsFiddle-példában a problémát, <div class="modal">-ba rakva a visszakapott tartalmat, és így tényleg üresen jelenik meg. Hát ez a library működéséből következik, a megoldás simán az, hogy
1.) a visszaadott tartalomból kihagyod a "modal" osztállyal ellátott divet (végül is felesleges)
2.) átírod a displayModal függvényt úgy, hogy csak egy $(content).modal(); sor legyen benne.
Utóbbinál viszont garantálnod kell, hogy egy jQuery-nek átadható tartalom van benne, tehát pl. mindenhol szerepel egy konténerelem, pl. épp a <div class="modal">...</div> vagy hasonló, de ez annyiból törékeny, hogy pl. már egy asdasd<div class="modal">...</div>qweqwe nem működne, mert a jQuery-nek átadva így szintaktikai hibát kapnál (a jQuery ezzel a tartalommal így már nem tud mit kezdeni, elég kipróbálni azt, hogy $('asdasd<div class="modal">...</div>qweqwe'), "Syntax error, unrecognized expression" lesz az eredmény).
Persze annyiból így is-úgy is törékeny lesz a dolog, hogy ha van egy olyan div a kapott tartalomban, ami tartalmazza a "modal" osztályt, akkor az abban lévő tartalmat eleve kidobja. Szerintem ilyen szempontból szarul működik a library, de hát ez van. -
Sk8erPeter
nagyúr
Érdekes, mert úgy tűnik, a tartalom lekérése sikeresen meg is történik, ahogy látszott a korábban a konzolra kiírt tartalomból, tehát valamiért csak épp a modális ablak betöltése az adott tartalommal nem sikeres. Az általam definiált displayModal függvényt is átmásoltad?
Igazából itt a legértelmesebb a böngészőn belüli debuggolás lenne, úgy, hogy egy breakpointot raksz a sikeres AJAX-kérést jelző eseménykezelőbe, meg mondjuk a displayModal függvénybe, megnézve, hogy a tartalom az elvárt-e, mi a változók aktuális értéke, stb... Egyszerű megközelítésként, ha még nem debuggoltál (egyébként elég egyszerű), egészítsd ki mondjuk ezt is egy konzolra kiíratással:function displayModal(content) {
console.log('content: ', content);
$('<div>', {
html: content
}).modal();
}Most jobb ötletem nincs, ha a debuggolás még nem megy, mint hogy vizsgáljuk meg ilyen módon, hogy a tartalmak az elvártak-e, eljut-e idáig, stb. Ha a tartalom ezenbelül megfelelő, akkor nem nagyon értem, miért nem működik nálad, amikor a jsFiddle-példában jó, de derítsük ki egyelőre ezt, hogy idáig eljutunk-e.
(#5201):
Hát köszi, de azért bőven szoktam tévedni. -
Sk8erPeter
nagyúr
Szívesen. Ja, a konzolra ezt az üzenetet azért írja, mert beleraktam egy console.log(...) sort.
Azt akár ki is törölheted, debuggolási célra jó a console.log - de ebből kiindulni nem lehet, mivel ez nem hiba.
Ha a Network fülre kattintasz a webfejlesztő panelon, ott látszik valami pirossal jelölt erőforrás, meg valami hibakód, amikor megpróbálja betölteni a tartalmat? Ha a megfelelő linkre kattintasz, akkor mi történik? -
Sk8erPeter
nagyúr
Működésre bírtam neked:
http://jsfiddle.net/bha6er48/20/
Kommenteztem a kódot, remélem, az alapján egyértelmű lesz, ha valami nem tiszta, kérdezz nyugodtan.
A jsFiddle API-t használtam az AJAX-tesztelésre, ezért szerepel bedrótozva az URL-nél a /echo/html/ a loadContentFrom függvény első sorában (a böngészők biztonsági beállításai miatt nem is lehetne másik domainre kérést indítani), azt az egy sort majd kitörölheted az éles kódban! Az $.ajax résznél majd a POST-metódust változtasd GET-re, ez is a jsFiddle miatt volt szükséges. -
Sk8erPeter
nagyúr
Ha lehet, rakj fel egy egyszerűsített példát inkább a jsFiddle-re, pont ilyen szemléltetésre és demózásra való. Az egyes külön lévő panelekbe fel tudod rakni a HTML-, CSS-, ill. JS-kódodat. A HTML-résznél ebben az esetben nem kell az alapvető struktúra, elég a <body>-ban lévő részt bemásolni. Így több esélyed van arra, hogy segítséget nyújt valaki közülünk, amikor picit ráér.
Szerintem a legtöbbünknek nem lesz kedve kibontani a zip-fájlodat, aztán helyileg tesztelni, majd felrakni helyetted a javított/javasolt jsFiddle-példát.
Új hozzászólás Aktív témák
Hirdetés
- ubyegon2: Airfryer XL XXL forrólevegős sütő gyakorlati tanácsok, ötletek, receptek
- Xbox Series X|S
- Milyen program, ami...?
- Székesfehérvár és környéke adok-veszek-beszélgetek
- Hitelkártyák használata, hitelkártya visszatérítés
- Budapest és környéke adok-veszek-beszélgetek
- PlayerUnknown’s Battlegrounds
- Linux kezdőknek
- Kivégzi a Firewire-t az új macOS verzió?
- PlayStation 5
- További aktív témák...
- SK Hynix Platinum P41 2TB M.2 NVME PCI-E 4.0 x4 - Új - 7000-6500 MBs - Eladó!
- Verbatim Vi5000 2TB M.2 NVME PCI-E 4.0 x4 - Új, bontatlan - Eladó!
- Dell Latitude 7480, 14" FHD, I5-6300U CPU, 8GB DDR4, 256GB SSD, W11, 1 év garancia ( OLVASD VÉGIG)
- HP ProBook 440 G7, 14" HD, I5-10210U CPU, 8GB DDR4, 256GB SSD, W11, 1 év garancia ( OLVASD VÉGIG)
- AMD Ryzen 5 5600 - Új, 3 év garancia - Eladó!
- BESZÁMÍTÁS! Intel Core i9 9900K 8 mag 16 szál processzor garanciával hibátlan működéssel
- DELL PowerEdge R640 rack szerver - 2xGold 6138 (20c/40t, 2.0/3.7GHz), 64GB RAM,4x1G, H730 1GB, áfás
- Konica Bizhub C220 - A3 fénymásoló
- AKCIÓ! Microsoft XBOX Series S 512GB játékkonzol garanciával hibátlan működéssel
- ÁRGARANCIA!Épített KomPhone Ryzen 5 5600X 16/32/64GB RAM RTX 4060 8GB GAMER PC termékbeszámítással
Állásajánlatok
Cég: PC Trade Systems Kft.
Város: Szeged
Cég: Promenade Publishing House Kft.
Város: Budapest