Új hozzászólás Aktív témák
-
trisztan94
őstag
soak:
Végül HTTP POST lett. Valamiért nagyon bonyolítottam a dolgokat és mindenképp json-nal akartam elküldeni a php-nak, de aztán rájöttem, hogy így sokkal egyszerűbb
Sk8erPeter:
Igazából a json adatok async küldése volt a "gond". Nem kaptam semmilyen visszajelzést a php-tól, hogy mi történt, ezért azt hittem az ajax fgv a rossz.
Más:
Hogyan tudok "megállítani" egy függvényt, majd a program egy későbbi részénél visszamenni rá?Van egy SWITCH elágazásom, ott számokat néz egy változóban. a 2, 3, 13 és 45-ös számok kellenek nekem, mindig valami mást csinálok a különböző lehetőségekkel. Úgy alakult, hogy a 13-mas esetében egy olyan változóra van szükségem ami csak a 45-ösben jön létre. Sajnos nem tudom azt csinálni, hogy a 13-masban definiálom a változót (és adok neki értéket). Tehát arra jutottam, hogy azt kéne, hogy a 13-mas lefutását a 45-ös lefutása utánra intézem (13-mast kihagyom, átugrok a 45-re és ha az végig ment akkor futtatom le a 13-mast)
Ilyet lehet?
Kódot sajnos nem tudok mutatni, max privátbanhttps://heureka-kreativ.hu
-
Jim-Y
veterán
válasz trisztan94 #2501 üzenetére
A 13-ban nem tudod meghívni a 45-öst?
-
trisztan94
őstag
Na hát azt meg hogyan kell?
Egy ilyenem van:
switch (változó) {
case 2:
//lenyegtelen
break;
case 3:
//lenyegtelen
break;
case 13:
ide kell nekem a valtozo 5
break;
case 45:
var valtozo5 = valami
break
}Na most a 13ba hogy ágyazom bele a valtozo5-öt, ha az csak utána, a 45nél jön létre?
Szerk:
A kódomban akkor kap értéket, a switch előtt már létre van hozva.[ Szerkesztve ]
https://heureka-kreativ.hu
-
Sk8erPeter
nagyúr
válasz trisztan94 #2501 üzenetére
"Végül HTTP POST lett. Valamiért nagyon bonyolítottam a dolgokat és mindenképp json-nal akartam elküldeni a php-nak, de aztán rájöttem, hogy így sokkal egyszerűbb "
Te valamit durván keversz, a POST egy HTTP-metódus (ahogy a GET, HEAD, PUT, DELETE, stb. is). Hogy azonbelül milyen formában küldöd át az adatokat, az megint más kérdés.JSON-ben is nyugodtan küldhetted volna, nem tudom, végül hogyan küldted, de egész biztos, hogy semmivel sem lett volna bonyolultabb.
"Van egy SWITCH elágazásom, ott számokat néz egy változóban. a 2, 3, 13 és 45-ös számok kellenek nekem, mindig valami mást csinálok a különböző lehetőségekkel. Úgy alakult, hogy a 13-mas esetében egy olyan változóra van szükségem ami csak a 45-ösben jön létre."
A problémád így konkrétumok nélkül meg megint nehezen értelmezhető, miért nem delegálod az adott feladatot egy függvénybe? Milyen függései vannak annak, amit épp csinálsz? Mindig feladatfüggő egy ilyennek a megoldása, így értelmesebbet és specifikusabbat nehéz lenne mondani...[ Szerkesztve ]
Sk8erPeter
-
Soak
veterán
válasz trisztan94 #2503 üzenetére
Gyanus hogy nem jo a logikad, mert ez elso hallasra nagyon nyakatekert.
-
válasz trisztan94 #2501 üzenetére
Nagyon egyszerű, old meg switch nélkül.
-
Jim-Y
veterán
válasz trisztan94 #2503 üzenetére
var valtozo = 13;
switch (valtozo) {
case 2:
//lenyegtelen
break;
case 3:
//lenyegtelen
break;
case 13:
var variableCopy = assignementToVar();
alert(variableCopy);
break;
case 45:
assignementToVar();
break;
default:
break;
}
function assignementToVar() {
var valtozo5 = "akarmi";
return valtozo5;
}Mondjuk a helyedben biztos átgondolnám a logikát, mert ez nem tűnik egy túl nehéz feladatnak, és a switch-case szerkezetet is tuti ki tudnád küszöbölni.
-
trisztan94
őstag
Muszáj a switch
Végül írtam stackoverflow-ra, ott adtak egy nagyon jó választ rá:
// this needs to be defined somewhere outside that it is preserved
// between calls to the code that contains `switch`
var doThisWhenHelloIsSet = [];
// ...
var hello;
switch ($variable) {
// ...
case 13:
doThisWhenHelloIsSet.push(function(h) {
// do something with argument named "h"
// (which will have the value of variable named "hello").
// Ex.:
alert(h);
});
break;
case 45:
hello = "hello";
for (var i = 0; i < doThisWhenHelloIsSet.length; i++) {
doThisWhenHelloIsSet[i](hello);
}
doThisWhenHelloIsSet = [];
break;
}https://heureka-kreativ.hu
-
trisztan94
őstag
Mennyire megoldható js/jquery-vel egy automatikus lapozgatás?
Pl blog: Végignézi a megjelenített oldalt majd ha a végére ér "rányom" a következő oldal gombra, megvárja míg a kövi oldal betöltődik ott is végignézi, kövi oldal, stb..
Nagyon nagy szopás 100k-ért?
https://heureka-kreativ.hu
-
Speeedfire
nagyúr
válasz trisztan94 #2509 üzenetére
Ennyiért easy money.
Fotóim https://fb.com/toth.szabolcs.art || IG: http://instagram.com/_tothszabolcs_ || Weblapom http://szabolcs-toth.com
-
martonx
veterán
válasz trisztan94 #2509 üzenetére
Erre jó válasz nincs. Látok pár buktatót a dologban, de megoldható az biztos. Hogy jó pénz-e érte 100K az a konkrét igényektől, a programozói tudásodtól, illetve a majdan fellelt buktatókon múlik. Fogalmazzunk úgy, hogy várhatóan nem fogsz bukni rajta. Aztán hogy a végeredmény hol lesz a teljes üzleti kudarc, és a szuper nyereség között, az majd kiderül.
Én kérek elnézést!
-
Sk8erPeter
nagyúr
válasz trisztan94 #2509 üzenetére
"Mennyire megoldható js/jquery-vel egy automatikus lapozgatás?
Pl blog: Végignézi a megjelenített oldalt majd ha a végére ér "rányom" a következő oldal gombra, megvárja míg a kövi oldal betöltődik ott is végignézi, kövi oldal, stb.."
De ez hogy értendő?
A lap aljára érek, és automatikusan az orcámba vágja a következő oldalt? Igazából nem tűnik túl bonyolultnak (bár attól függ, mi számít "következő" oldalnak, azt a részt meg kell oldanod, de normális esetben az sem egy olyan nagy agymenés), csak kérdés, hogyan gondolta a megvalósítást a megrendelő. Automatikusan ne lapozzon nekem, amikor még esetleg az utolsó bekezdést olvasom, mert azonnal bezárom az oldalt, és elfelejtem, hogy létezik, de előtte még megátkozom. Az ilyen automatizált dolgok sokszor a visszájára sülnek el, úgyhogy csak ésszel, és hívd fel a figyelmet a hátulütőire is. Ha konkrétabb segítséget szeretnél kapni, akkor konkrétabb leírást kérünk.Sk8erPeter
-
Speeedfire
nagyúr
válasz Sk8erPeter #2512 üzenetére
Ha konkrétabb segítséget szeretnél kapni, akkor konkrétabb leírást kérünk.
Nem is kért segítséget.Fotóim https://fb.com/toth.szabolcs.art || IG: http://instagram.com/_tothszabolcs_ || Weblapom http://szabolcs-toth.com
-
Sk8erPeter
nagyúr
-
Speeedfire
nagyúr
válasz Sk8erPeter #2514 üzenetére
Jövőbelátó vagy?!
Fotóim https://fb.com/toth.szabolcs.art || IG: http://instagram.com/_tothszabolcs_ || Weblapom http://szabolcs-toth.com
-
martonx
veterán
válasz Speeedfire #2515 üzenetére
Trisztan94 eddigi munkásságát tekintve nem kell hozzá nagy jövőbelátás
Én kérek elnézést!
-
trisztan94
őstag
válasz Sk8erPeter #2512 üzenetére
Ez még mindig az a cégadat szkennelő kiegészítő amit csináltam.
Most úgy működik, hogy kidob az oldal egy listát 20 céggel rajta, egyesével kell kattintgatni a cégekre, megvárni amíg betölt az oldal, utána a kiegészítő szépen lementi a szükséges információkat egy adatbázisba.
Erre adtam ötletet a megrendelőnek, hogy +100.000 forintért fullra automatizálom, tehát nem kell kattintgatni, csak kiválasztja a cég tevékenységi körét és ott az összes oldalon végigmegy az összes cégen és beszkenneli az egészet, tehát neki sok dolga nincs vele.
Na, tehát ezért kell a lapozgatás, hogy amikor a lista végére ér küldjön egy kérést a következő lapra (most lestem meg, elég a querystringben a "page" változót állítgatni és átvált) és az azon lévő cégeket nézze végig és így tovább amíg a végére nem ér.
Érci?
martonx:
Most miért vagy ilyen gonosz?
szerk: sry a szóismétlésért
Szerk 2:
De amúgy valszeg nem lesz egyszerű dolgom, mert ajaxal kommunikál az oldal. Na akkor jöhet is az első kérdés:
Lehet csekkolni azt, hogy mikor töltött be egy ajax kérés?
[ Szerkesztve ]
https://heureka-kreativ.hu
-
Sk8erPeter
nagyúr
válasz trisztan94 #2518 üzenetére
És hogyhogy erre böngésző-kiegészítőt csináltál, és nem szerveroldali parse-olós kódot? Vagy olyan elemek vannak, amikhez mindenképpen JS-re van szükség?
Azt viszont nem nagyon értem, ez miért számít "lapozásnak", miért nem simán csak egy másik oldal betöltése. Vagy van bármi közük egymáshoz?
Ha jól értem, amit írsz, simán csak bejárod az oldalon, bizonyos helyen található linkek tartalmát, aztán annyi... Nem?"Lehet csekkolni azt, hogy mikor töltött be egy ajax kérés?"
Most ezt komolyan kérdezed? Vagy csak viccelsz?
Szerinted a callback-ek mire valók? (.success()/.error(), .complete(), ...)http://api.jquery.com/jQuery.ajax/
És még azt kérdezted, martonx miért olyan gonosz...?
[ Szerkesztve ]
Sk8erPeter
-
trisztan94
őstag
válasz Sk8erPeter #2519 üzenetére
"És hogyhogy erre böngésző-kiegészítőt csináltál, és nem szerveroldali parse-olós kódot?"
Mert loginos az oldal, és szinte csak ajax kérések vannak benne (mindig a loadpage.php-n van az oldal)
Szerencsére könnyű dolgom volt, mert a listázásnál a querystringben benne van a "list" szócska, csak szimplán csekkolom.
A kiegészítő benyom egy js-t az oldalba, ez a kiegészítő frontendje, úgy működik, mintha az oldalban lenne benne az a script. A frontent átküldi az adatokat a kiegészítő backendjének egy message-ben (az is js, de az tud már kommunikálni a kiegészítővel, tehát ki tudunk írni üzit, hogy megvannak az adatok - a frontend nem nagyon tud kommunikálni a kiegészítővel, csak message-eket tud küldeni.)
A kiegészítő backend-je elküldi egy remote php scriptnek a feldolgozott adatokat és az szimplán benyomja egy adatbázisba. Egy másik remote php script meg egy xlsx-et csinál belőle amit rögtön lehet is használni a szintén általam írt emailküldőben."Azt viszont nem nagyon értem, ez miért számít "lapozásnak", miért nem simán csak egy másik oldal betöltése."
Mert ajaxos az egész oldal, mondom
"Ha jól értem, amit írsz, simán csak bejárod az oldalon, bizonyos helyen található linkek tartalmát, aztán annyi... Nem?"
Hát ja, rámegyek minden linkre, betöltjük a tartamat kiszedjük amit kell és visszamegyünk a listázásra.
"Lehet csekkolni azt, hogy mikor töltött be egy ajax kérés?"
Most ezt komolyan kérdezed? Vagy csak viccelsz?
Szerinted a callback-ek mire valók? (.success()/.error(), .complete(), ...)"De ezaz, hogy nem az én scriptem ajaxát kell csekkolnom, hanem az oldalon lévő scriptet ami kezeli az oldal ajaxát.
De rosszul kérdeztem.
Így van felépítve az oldal script ügyileg:jquery.js
script.jsEzek vannak benne. Na most én belenyomom egy másik script tag-be az én scriptemet:
feldolgoz.js
nekem a script.js-ben futó ajax kéréseket kell néznem a feldolgoz.js-ből. Megnézni mikor ér véget (tehát mikor töltött be az adat - success fn-be mikor lép(?))
https://heureka-kreativ.hu
-
martonx
veterán
válasz trisztan94 #2518 üzenetére
Nem vagyok gonosz, meg is jött az első kérdés. Az egyik buktatónak pont azt gondoltam, hogy mi van akkor ha ajax-al kommunikál az oldal? Akkor vajon mit fogsz figyelni?
Én kérek elnézést!
-
martonx
veterán
válasz Sk8erPeter #2519 üzenetére
De ha nem a saját ajax függvényét kell figyelni, hanem ő csak egy beinjektált script, aminek semmi ráhatása nincs az oldal saját meglévő scriptjeire, akkor azok belső működését hogy figyelje? Mondjuk rá lehet tenni egy 10 másodperces késleltetést biztos ami biztos, annyi idő alatt csak lejönnek a cuccok.
Ettől viszont lassul az automatizáció, de ha a gyorsaság nem cél, akkor percenként 6 oldalt így is fel fog tudni dolgozni.Én kérek elnézést!
-
Sk8erPeter
nagyúr
válasz martonx #2522 üzenetére
Jogos, mint az azóta írt hsz.-éből kiderült, totál más elképzelésem volt a feladatról, és azt az ominózus mondatot önmagában kezeltem. Mondjuk szerintem az egész feladatot le lehetett volna írni precízebben és rövidebben is, mert így számomra legalábbis katyvasszerű lett, és inkább átrohantam a hsz.-en, mert nem volt kedvem fárasztani az agyamat.
(#2520) trisztan94 :
ez esetben sorry, én értettem félre a feladatot.Sk8erPeter
-
Male
nagyúr
Sziasztok!
Egy olyan jQuery/jQuery UI cuccra lenne szükségem, amivel meg tudok jeleníteni egy hetet, fix tól-ig idősávban (tehát minden nap eleje és vége le van vágva, vagy letiltva), 15 perces osztással. Minden osztáshoz egy sorszám tartozik... jelen esetben ez 1 - 704 közötti számokat jelent. A funkcionalitása olyan, hogy egérrel ki lehet jelölgetni részeket benne, amik nem feltétlenül összefüggőek (tehát egy rakás időszakot kijelölhet), majd ezt egyben el tudom küldeni, lehetőleg úgy, hogy 1 - 704 között mindhez csak egy 0/1 érték jön (ez annyira nem kritérium, csak a végeredmény nekem ilyen formában kell, és így tudnám a leggyorsabban feldolgozni).
Ami még kell, hogy eleve megjelenítéskor már ki tudjak jelölni részeket (gyak. visszaállítok egy korábban bejelölgetett állapotot).Tehát összességében valami ilyesmire lenne szükségem, csak sokkal kevesebb tudással, és főleg nem azzal, hogy minden kijelölésnél felugorjon egy ablak.... egyrészt mert a felhasználónak macera lenne, másrészt mert nekem feldolgozni is sokkal előnytelenebb.
A kérdésem, hogy valaki kapásból rá tudja vágni nekem, hogy mi az a plugin ami ezt tudja, vagy esetleg a linkemen lévőt ismeri, és tudja, hogy vissza lehet ennyire butítani... vagy guglizzak még egy napot, és végül inkább csináljam meg saját magamnak?
(Jelenleg ez nagyon felhasználóbarát módon 704 darab checkbox-szal van megoldva, mivel úgy volt, hogy ezt csak egy pár embernek kell kitöltenie, és nekik is életükben egyszer, szóval kibírják, de megváltoztak az elvárások, és persze azóta már elvárható lett az is, hogy a JS engedélyezve legyen a böngészőben )
-
trisztan94
őstag
Sztem irj magadnak egyet. Checkbox +label kombinacipval, a checkboxot elrejted es a labelra raksz stilusokat.
Vhogy igy:
http://dropthebit.com/718/radio-buttons-that-actually-look-cool/#more-718Sry a hsz minosegert, mobilrol vagyok!
[ Szerkesztve ]
https://heureka-kreativ.hu
-
Male
nagyúr
válasz trisztan94 #2525 üzenetére
Őőőő... nem szebbé tétel a cél, hanem hogy ne kelljen 352-ször kattintani a kitöltéséhez.
Közben megoldódni látszik, megnéztem alaposabban amit linkeltem, és úgy tűnik át tudom szabni olyanra, ahogy nekem kell.... a gáz, hogy ezer éves jQueryvel megy csak.... remek.
-
Male
nagyúr
Hm... végülis lehet, hogy elég a jQuery UI-ban lévő "selectable"... csak annál meg ugyan egér húzással kijelölhető egy-egy sorozat, de a kijelölés megszüntetése már csak egyesével megy (vagy egyben az összesé), nem lehet ugyan úgy húzással megszüntetni egy szakaszon a kijelölést...
-
trisztan94
őstag
Sziasztok!
Van egy ilyen brutál ronda try-catch sorozatom:
try {
$hatalyosVezetoTalalat = $hatalyosVezetoTalalat.split("(")[0];
} catch (e) {
console.log("Nem volt születési név");
console.log(e);
}
try {
$hatalyosVezetoTalalat = $hatalyosVezetoTalalat.split("ln")[0];
} catch (e) {
console.log("Nem volt leánykori név, " + e);
}
try {
$hatalyosVezetoTalalat = $hatalyosVezetoTalalat.split(" sz.")[0];
} catch (e) {
console.log("Nem volt születési név, " + e);
}Hogy tudom ezt egy darab try-catch-be belesűríteni, úgy, hogy biztosan végig menjen minden lehetőségen?
Pl: Nincs születési név, akkor nem ugrik be a catch-be rögtön, hanem megnézi, hogy van-e leánykori név, ha az sincs akkor meg megnézi, hogy egy máshogy jelölt születési név van-e, ha az sincs akkor ugrik be a catch-be.De olyanokra is fel kell készülnie, hogy csak születési név van mondjuk, többi nincs. Szépen lementi a születési név nélküli nevet, a másik kettő meg beugrik a catch-be.
Kezd bonyolodni...
Vagy ez így jó?
[ Szerkesztve ]
https://heureka-kreativ.hu
-
trisztan94
őstag
válasz trisztan94 #2531 üzenetére
Találtam egy szintén brutál ronda if() {} függvényt is, ezzel lehet valamit kezdeni?
if(typeof $mailcim != 'undefined' && $mailcim != null && $mailcim != "" && $mailcim != " " && typeof $hatalyosVezetoTalalat != 'undefined' && $hatalyosVezetoTalalat != null && $hatalyosVezetoTalalat != "" && $hatalyosVezetoTalalat != " ") { //do something }
https://heureka-kreativ.hu
-
Speeedfire
nagyúr
Fotóim https://fb.com/toth.szabolcs.art || IG: http://instagram.com/_tothszabolcs_ || Weblapom http://szabolcs-toth.com
-
martonx
veterán
válasz trisztan94 #2531 üzenetére
Alapvető programozói hiba try catch-ek sorozatával megpróbálni lekezelni az előjöhető hibákat. Pláne, amikor ilyen jól megfogható esetekről van szó.
Alakítsd át egy rakás if-re, és még try catch se fog kelleni.Én kérek elnézést!
-
trisztan94
őstag
válasz martonx #2534 üzenetére
Igenigen, engem is nagyon zavart. Biztos meg van bennem akkor a programozói lélek
De ezaz, hogy nem tudom mire rakni az if()-et.
try {
$hatalyosVezetoTalalat = $hatalyosVezetoTalalat.split("(")[0];
} catch (e) {
console.log("Nem volt születési név");
console.log(e);
}Így néz ki a $hatalyosvezetotalalat:
vezetéknév keresztnév (an: vezetéknév keresztnév)
vagy
vezetéknév keresztnév sz.: vezetéknév keresztnév
vagy
vezetéknév keresztnév ln: leánykori név
Tehát valamelyik a három közül. Ezekből nekem csak a sima vezetéknév-keresztnév kombó kell, de mindig csak az egyik van jelen. Ha mondjuk leánykori név van, akkor a másik kettő próbálkozásra "cannot retreive... of undefined" féle hibát dob (mert ugye nem találja a split-elni való karaktereket)
De nem tudom, a split visszaküld egy boolean értéket?
if($hatalyosVezetoTalalat.split("(")[0]) {
$hatalyosVezetoTalalat = $hatalyosVezetoTalalat.split("(")[0];
}De így meg van benne egy ismétlés, az sem jó programozói szokás
https://heureka-kreativ.hu
-
Karma
félisten
válasz trisztan94 #2535 üzenetére
A split ugyan nem ad vissza a string tömbön kívül semmit, de senki nem akadályoz meg abban, hogy a split előtt indexOffal megnézd, kell-e egyáltalán splitelni.
Ez a szál miért nem a JavaScript topikban van?
“All nothings are not equal.”
-
Sk8erPeter
nagyúr
válasz trisztan94 #2535 üzenetére
Én csak azt nem értem - azonkívül, amit Karma felvetett, hogy ez a témázás miért nem a JavaScript topicban folyik, mivel ennek köze nincs a jQuery-hez -, hogy ehelyett a splitelgetős ocsmány bénázás helyett miért nem használsz reguláris kifejezéseket? Egyből le tudnád csekkolni, melyik mintára illeszkedik az adott szöveg, ha van találat egyáltalán.
Szerk.:
"De nem tudom, a split visszaküld egy boolean értéket?"
Vágod, van olyan, hogy Google, meg MDN, meg ilyesmik... (De eddig a split függvényt használtad, nem? Akkor miért kérdés, mit ad vissza? )https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/split
"The split method returns the new array."
---
"if($hatalyosVezetoTalalat.split("(")[0]) {
$hatalyosVezetoTalalat = $hatalyosVezetoTalalat.split("(")[0];
}
De így meg van benne egy ismétlés, az sem jó programozói szokás "
Ne csináld már.
Egyrészt az ilyen ismételgetős problémák elkerülésére az a megoldás, hogy külön erre dedikált sorba írod magát a műveletet, amit NEM akarsz megismételni, eltárolod a visszatérési értékét egy változóba, aztán csekkolod a változó értékét. Nem egy mágia.
Másrészt pont a splitelgetés előtt akartál ellenőrzést bevezetni, hogy ne dobáljon kivételt, ergo ennek az if-nek nem sok értelme volt így. Beraktad egy if-be, de ha hibája van, továbbra is kivételt fog dobálni.[ Szerkesztve ]
Sk8erPeter
-
trisztan94
őstag
válasz Sk8erPeter #2537 üzenetére
Valóban elég gyász kód volt, beismerem, na Hajnali kódolgatásom "gyönyörű" gyermeke.
"ez a témázás miért nem a JavaScript topicban folyik"
Szintén ugyanaz a hajnali lustaság, ez van bent a kedvenc topikok dobozkában, nem akartam kikeresni
Nem is értem hogy gondoltam én ezeket
Regular expression-öknek szerintem majd utána nézek pontosan, jQuery-ben nem nagyon volt még dolgom velük.
Bocsi az agyzsibbasztásért
[ Szerkesztve ]
https://heureka-kreativ.hu
-
Sk8erPeter
nagyúr
válasz trisztan94 #2538 üzenetére
"Regular expression-öknek szerintem majd utána nézek pontosan, jQuery-ben nem nagyon volt még dolgom velük."
Ne ragaszkodj már ennyire a jQuery-hez. JavaScriptes (!! bizony, létezik még olyan is, nem csak jQuery, szép lassan fel kéne idézni, annak mi is az alapja ) regexpeknek nézz utána.
És ha már bármilyen nyelvben (!) volt dolgod reguláris kifejezésekkel, akkor nem fog különös meglepetést okozni a JavaScriptes módszer, a lényege az, hogy egyáltalán tisztában légy a reguláris kifejezések felhasználhatóságával...Sk8erPeter
-
Sk8erPeter
nagyúr
válasz trisztan94 #2532 üzenetére
"Találtam egy szintén brutál ronda if() {} függvényt"
Milyen if() FÜGGVÉNYT?Ha gondolod, .trim() és az alábbi empty() függvény használatával leegyszerűsítheted az ellenőrzést:
http://phpjs.org/functions/empty/Sk8erPeter
-
Muton
addikt
Heló!
Ha van egy input mezőm, amire egy dateTimePicker van kötve. Azt hogy lehet elegánsan megoldani, hogy ha az input focusban van, de nem a pickerbe kattintok, akkor történjen valami (pl írjon be egy megadott dátumot)?
Tehát nekem valami olyasmi kellene, ami a blur() mellett vizsgálna egy egy e.targetet is, mert ha pickerbe kattint, az is kiváltja a blur()-t, meg ha a pickeren kívül, az is
Muton#2316 - $z@r a drop >_<
-
Sk8erPeter
nagyúr
Nem egyszerűbb, ha van egy alapértelmezett dátumod?
http://api.jqueryui.com/datepicker/#option-defaultDate
Mivel nem írtad körül túl értelmesen, ennél jobb javaslatot nehéz adni.
Sk8erPeter
-
Muton
addikt
válasz Sk8erPeter #2542 üzenetére
dátum mindig van, ha nincs értelmes megadva akkor csak 0 (azaz 1970....). viszont ezt nem írjuk ki, soha, hanem helyette megy egy az input felett lévő másik divbe, hogy még nincs beállítva. Na most userke belekattint ebbe a felső divbe, az a dátum-input alá mászik, oda beállítódik a null dátum (1970...) és megjelenik alatta a picker. most ha azon beállít egy dátumot, akkor az beíródik az inputba, a picker eltűnik, mindenki boldog. de ha amikor a pickerben 1970 van és nem a pickerbe kattint, akkor a picker bezáródik, az inputba 1970 van, ami nem baj, csak ilyenkor alulról elő kell hívni a labelt, hogy "még nem állítottad be",
sajnos az nem megoldás, hogy az input blur()-ra nézem, hogy null-e a dátum, és ha igen, akkor visszarakom a labelt, mert a pickerbe kattintás is kiváltja blur()-t.tehát nekem olyan kellene, hogy blur esetén megnézi, hogy hová kattint (ha nem a pickerbe, akkor jöjjön a label visszarakása)
Muton#2316 - $z@r a drop >_<
-
Muton
addikt
sikerült megoldani
az input blu()-be azt mondom, ha a dátum nulla, akkor egy ''alma' globális változó legyen true (ami default false)
doc.readyben meg azt mondom, hogy click eseménynél ha a picker látható és alma===true, akkor ha e.target-nek nincs pickeres classa, akkor rakja vissza a labeltbiztos meg lehetne oldani szebben, mert így minden klikkre ellenőrzés végez (mondjuk nagyon pici panelen), szóval aki megértette a problémát (tudom, hogy nagy tehetségem van abban, hogy nem tudom jól leírni ), és van szebb megoldása, az kérem ne tartsa vissza magában
Muton#2316 - $z@r a drop >_<
-
Sk8erPeter
nagyúr
"tudom, hogy nagy tehetségem van abban, hogy nem tudom jól leírni "
Jó, hogy ezt helyettem írtad le, mert egy mukkot nem értettem abból, amit előbb ideokádtál, de hátha szerencséd van, és valakinek van türelme végiggondolni ilyen megfogalmazások ellenére is a problémádat.
Mindenesetre enyhén szólva vicces, hogy egy "az input blu()-be azt mondom, ha a dátum nulla, akkor egy ''alma' globális változó legyen true (ami default false)".
Eleve az is gáz, hogy ha a dátum nincs kitöltve, akkor az nálad egyenlő 1970-nel... Mit kezdenél azzal, ha születési dátumot kellene beállítani, és a júzer nem állította volna még be, mindenki '70-es születésű lenne? Remek.Sk8erPeter
-
Muton
addikt
válasz Sk8erPeter #2545 üzenetére
ez nem születési dátum mező, itt még tavalyi dátum sem lesz, inkább tervezett időpontok a jövőben. pl add meg, hogy mikor mennél szabadságra jövőre viszont egy alsóbb réteg akkor is ad vissza dátum objektumot, ha azt nem állította még be senki, az alap meg a 0. az meg 1970-..... amit meg nem írunk ki, mert csúnya. még mindig nem értem, hogy mi a gond vele?
Muton#2316 - $z@r a drop >_<
-
Sk8erPeter
nagyúr
"ez nem születési dátum mező, itt még tavalyi dátum sem lesz, inkább tervezett időpontok a jövőben."
Rögtön gondoltam, de látom nem jött át az üzenet... Attól még, mert jövőbeli dátum, nem lenne muszáj, hogy a nem kitöltött mező 1970-nel legyen egyenlő, mert szerintem az gány. Pont erre említettem azt az esetet, hogy ezt a luxust már nem engedhetnéd meg magadnak, ha például születési dátumokról, vagy bármilyen múltbeli dátumról lenne szó. (De ez még mindig nem jelenti azt, hogy most ez lenne a feladatod, mielőtt elismételnéd... De ettől még nem kell szarul és rugalmatlanul megoldani a feladatot.)"egy alsóbb réteg akkor is ad vissza dátum objektumot, ha azt nem állította még be senki, az alap meg a 0. az meg 1970-....."
És ez miért történik így?Sk8erPeter
-
Muton
addikt
válasz Sk8erPeter #2548 üzenetére
És ez miért történik így?
mert (mint ahogy asszem írtam is futólag) az alsóbb réteg, ahonnan az infók jönnek, meg ahová a gui küldi a változást, új adatokat, megköveteli. alma1 objektumnak mindig van id-ja, ha nincs akkor üres string, mindig van date1, és date2 adattagja, ami kötelezően egy date objektum, ami alapból Date(0), meg van tulajdonosa, ami kötelezően a kontakt objektum, stb.
az meg hogy miért van így azt nem tudom, a kliens core része számos rétegből áll, biztos valahol vagy kellett, vagy így volt valakinek egyszerű(bb). vagy lehet, h a szerver oldalon kellett. passz(De ez még mindig nem jelenti azt, hogy most ez lenne a feladatod, mielőtt elismételnéd...
akkor csak a Te kedvedért, külön kérésedre, hogy érezd a törődést:
de most nem a date(0)-n van a hangsúly, mert az lehet 2013.jan.1. is, hanem, hogy default érték, vagy nem. ha default, akkor label megy helyette, ha nem, akkor a megadott dátum. a probléma az, ha defaultot akar módosítani, majd rájön közben, hogy mégsem, akkor ne a default legyen, hanem megint a label
a lényeg az volt, hogy egy input blur()-t kellett összekötni a kiváltó klikk elemzésével (hogy kattintok-e egy speckó elemre, vagy nem). ami meg megoldódott szerencsére
Muton#2316 - $z@r a drop >_<
-
Sk8erPeter
nagyúr
Ennek nagyon örülök, hogy egy kezdő feladatot sikerült ilyen gyorsan megoldani.
A hosszas "alsóbb réteg"-blabla helyett egyszerűbb lett volna annyival összefoglalni, hogy arra a kódra nincs ráhatásod, így van megoldva, hogy 1970 a default érték, és kész, és akkor nem témáztunk volna rajta, megállapítottuk volna, hogy egy gány szar így De úgy tűnt, hogy a teljes feladatra van ráhatásod, és a megoldásban kérsz segítséget.
Amit írtál, teljes káosz volt, kb. ilyesmi: szeretnéd, ha blurre valami történne, de nem is történne, vagy mégis, és blur akkor is, ha nem blur, de márpedig akkor is.
No de a lényeg, hogy megoldottad, bár nekünk is megspórolhattad volna azt a pár percet, amit a problémád firkálmányának beparse-olásával, majd validitási problémáinak leküzdésével töltöttünk.Hidd el, az idő nekünk is drága, és ha nem tisztelsz meg minket azzal, hogy ember által értelmezhető és felfogható módon, de nem csetszerűen és igénytelenül írod le a problémát, akkor nem fogunk tudni neked segíteni. Gondolj bele, hogy mi lenne, ha akár a főnöködnek, akár a megrendelődnek egy ilyen leírással állnál elő, ők is más éghajlatok felé terelgetnének kedvesen.
[ Szerkesztve ]
Sk8erPeter
Új hozzászólás Aktív témák
- Samsung Galaxy S24 Ultra 12 / 256GB titánszürke dobozában 36 hónap garanciával!
- AKCIÓ! Intel Core i7 FÉLKONFIGOK - KÉRHETŐ ALKATRÉSZ IS CPU, RAM, ALAPLAP
- iPad Air 5 64GB M1 WIFI (kék)
- iPhone 14 Pro Max 128gb, makulátlan,garanciális, független
- ASUS H97-PRO alaplap 1150 Intel H97 lapkakészlet, 4xDDR3, SATA 3.0, HDMI, M.2 SSD foglalat
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: Ozeki Kft.
Város: Debrecen