JavaScript != Java (A JavaScript nem összekeverendő a Javával, két különböző programozási nyelvről van szó!)
Gyorskeresés
Legfrissebb anyagok
- Bemutató Spyra: akkus, nagynyomású, automata vízipuska
- Bemutató Route 66 Chicagotól Los Angelesig 2. rész
- Helyszíni riport Alfa Giulia Q-val a Balaton Park Circiut-en
- Bemutató A használt VGA piac kincsei - Július I
- Bemutató Bakancslista: Route 66 Chicagotól Los Angelesig
Általános témák
LOGOUT.hu témák
- [Re:] [sziku69:] Fűzzük össze a szavakat :)
- [Re:] [sziku69:] Szólánc.
- [Re:] [bb0t:] Gyilkos szénhidrátok, avagy hogyan fogytam önsanyargatás nélkül 16 kg-ot
- [Re:] Toyota Corolla Touring Sport 2.0 teszt és az autóipar
- [Re:] [Luck Dragon:] Asszociációs játék. :)
- [Re:] [Brogyi:] CTEK akkumulátor töltő és másolatai
- [Re:] [GoodSpeed:] Új alaplap, vagy BIOS frissítés után beállítandók II. Secure Boot
- [Re:] Elektromos rásegítésű kerékpárok
- [Re:] [D1Rect:] Nagy "hülyétkapokazapróktól" topik
- [Re:] RTX3070 16 GB VRAM-mal?
Szakmai témák
PROHARDVER! témák
Mobilarena témák
IT café témák
Téma összefoglaló
Hozzászólások
Taci
addikt
Az első részhez próbáld ki a charAt() függvényt. [link]
A másodiknál a forrástól is függ, mit kellene használnod, mert nem mindegy, hogyan szerepel benne az új sor.
Esetleg RegExp?
Tab: [link]
New line: [link]
De új sor lehet még a \n, \r, vagy a \n\r is, nem is beszélve a <br>-ről.
Vagy ezek olyan dolgok, amiket te is kipróbáltál már? Csak mert az első pár Google-találat.
[ Szerkesztve ]
Nem volt még alkalmam próbálni, így megnézem ezeket, hátha. A lényeg, hogy pl nyitsz egy jegyzettömböt, írsz bele pár dolgot, nyomsz pár tabot és pár entert, majd ezt a szöveget kimásolod és beilleszted az input mezőbe.
But who is watching the guardians?
Taci
addikt
Hmm. Én a tabokat kiszedem, így arra a trim()-et használom, és nem direktben azt keresem. Az input mezőt pedig csak egy sorosra állítottam (kereséshez), így nincs új sor (bemásolva sem).
De az előzőben leírtakat találok máshol is: [link]
enteredText = textareaVariableName.val();
numberOfLineBreaks = (enteredText.match(/\n/g)||[]).length;
characterCount = enteredText.length + numberOfLineBreaks;
De ezt tényleg ki kell próbálni. Remélhetőleg ezek közül valamelyikkel működni fog.
Annyi a pontosítás kedvéért, hogy nem input hanem textarea. A másik pedig, hogy számomra fontos, hogy a bemásolt szöveg tartalmazza az új sorokat és a tabokat, mert azok határolják nekem a szöveget, így azzal szeretnék dolgozni. Egyelőre az eddig linkelt dolgokkal nem értem el eredményt, de próbálkozom.
But who is watching the guardians?
Oké, a tab kiszedése már megvan (JSFiddle). Maradt az enter, amit a console.log-ban is elég furcsán jelez.
But who is watching the guardians?
mandleee
tag
if (ttt == "\n") {
console.log("Új sor!");
}
Köszönöm, így már elfogadja. Lényegébenezt csináltam, csak nem így írva, ez lehetett a probléma.
Továbbiakban mindenkinek köszönöm a segítséget!
But who is watching the guardians?
Taci
addikt
És ugyanúgy a "\t"-re is beugrik a tab (mert a kódban valóban egy tabot nyomtál be (mármint Mr. Y) - bár kétségtelen, működött. ).
[ Szerkesztve ]
Mellékes történet.
Azt tudja valaki, hogy ez miért nem működik? Magán a W3-on igen, de amint kimásolod onnan, már nem.
Taci: Lepróbáltam, igazad van.
[ Szerkesztve ]
But who is watching the guardians?
martonx
veterán
máshol is működnie kell
Én kérek elnézést!
But who is watching the guardians?
sztanozs
veterán
Próbáltam Win10-en, nem működött. Most kipróbáltam MacOS-en, azon sem megy. Akkor nem értem...
But who is watching the guardians?
Taci
addikt
Nem lehet, hogy az a szöveg még a W3-as oldalról került oda? Mert nekem sem megy a jsfiddle-ről. Először nekem is ott volt a szöveg, aztán arra gondoltam, lehet, csak a W3-as vágólapos másolásról, szóval másoltam valami más szöveget rá, aztán vissza a jsfiddle-be, és az előzőleg másolt tartalmat illeszti be vágólapról.
@Mr. Y: Nekem pont van ilyen fícsör a weblapon, működik is szépen, bemásolom majd, amint gépközelben leszek.
Köszönöm
But who is watching the guardians?
Taci
addikt
Parancsolj: [link] (anno én is valahol stackoverflow-n találtam)
Köszönöm, ez már működik nálam is
But who is watching the guardians?
coco2
őstag
Sziasztok!
Szöveget szeretnék kirakni valamiben weblapra, amit js-ből átírnék. Környezet: desktop chrome utolsó verzió.
A leegyszerűsített példa így néz ki. Az első alert megérkezik, a második már nem, és nem írja át a szöveget. Mi a baj a <span> innerHTML-jével? Miért crashel az átíró script?
Köszönöm
កុំភ្លេចប្រើភាសាអង់គ្លេសក្នុងបរិយាកាសអន្តរជាតិ។
cattus
őstag
Írja a konzolban: TypeError: document.getElementByID is not a function
Ami neked kell, az a document.getElementById
A kis- és nagybetűk számítanak.
[ Szerkesztve ]
Do the thing!
coco2
őstag
Oh bakker..
Hálás köszönetem
កុំភ្លេចប្រើភាសាអង់គ្លេសក្នុងបរិយាកាសអន្តរជាតិ។
Sziasztok!
JSON-ben jártasokhoz fordulnék. Van egy parancs: n = Object.keys(data).length;
, ami képes lekérdezni a tömb csoportjainak darabszámát. Azonban van-e arra mód, hogyha így néz ki a fájl:
{
"name": "Tranzisztor",
"type": "Electronic accessories",
"keys": ["tranzisztor", "tranyó", "elektronika", "alkatrész"]
}
Akkor ebből le tudja kérdezni, hogy a keys alatt hány elem található?
[ Szerkesztve ]
But who is watching the guardians?
Silεncε
őstag
data.keys.length? Ha jól értem, mit szeretnél. Vagy azt szeretnéd, hogy a JSON key-einek a száma + az array elemeinek a száma?
[ Szerkesztve ]
Nem, ez lesz az, köszönöm. Én kicsit másként próbáltam és úgy Nem volt jó
But who is watching the guardians?
laracroft
aktív tag
Sziasztok
Van egy táblázatom, ahol szükséges a sorszám oszlopom mezőjének a szerkesztése is. Szeretném ha még elküldés előtt jelezne, ha duplikált sorszámot használnak a táblázat sorszám oszlopában.
előre is köszi
Taci
addikt
Én nem bonyolítanám, két for ciklussal oldanám meg. Összedobtam neked egy jsFiddle-t hozzá: [link] (konzolba ír - F12)
laracroft
aktív tag
Köszi
laracroft
aktív tag
Köszi
laracroft
aktív tag
Sziasztok
Kérnék még 1 segítséget
Azt szeretném elérni, hogy Alert box 'okézása' után törölje a hibás input mezőt.
Az a baj, hogy hogy az input mezőimnek 'sorszam[ ]' az Id-je ezért nem a problémás mezőt törli, hanem az elsőt amit talál.document.getElementById('sorszam[]').value = "";
Ezt lehet orvosolni?
köszi
martonx
veterán
igen, mihelyst az id egyedi lesz
Én kérek elnézést!
Úgy van, ahogy martonx írta. Class esetén vonatkozik az összesre, de azonos ID esetén csak az elsőre
[ Szerkesztve ]
But who is watching the guardians?
laracroft
aktív tag
Köszi, akkor ezt hanyagolom
.... viszont
Ugyanez a script megjelenít egy error span-t, ha ugyanazon számértéket talál a táblázatom numbers oszlopában. Az a bajom, hogy már beíráskor megteszi ezt, én pedig azt szeretném, ha csak akkor futna le, mikor átlépek egy másik mezőbe.
(Ez egy olyan táblázat, melynek első nyolc sorában van 1-8-ig terjedő szerkeszthető sorszám, utána meg a muksó annyi sort ad hozzá, amennyit szeretne. Ezért van az, hogy pl a 2. sor 11-re való átírása is hibát ad, mert már megtalálta az 1-es sorszámot egy sorral feljebb.
Ha ezt akkor ellenőrizné, mikor elhagyom a mezőt, akkor kiiiirály lenne. #9024)
$('[name="sorszam[]"]').on("input", function () {
var value = $(this).val();
$('[name="sorszam[]"]')
.not(this)
.each(function () {
if ($(this).val() == value) {
document.getElementById("error").style.display = "";
}
});
});
köszi
[ Szerkesztve ]
cattus
őstag
A focus out eventre lesz szükséged.
Do the thing!
nevemfel
senior tag
Használd a "change" eventet az "input" helyett. És ha már úgyis jqueryzel, a document.getElementById("error").style.display = "";
helyett használhatsz$("#error").show();
-ot.
[ Szerkesztve ]
Forget your troubles, c'mon get happy
laracroft
aktív tag
Viiii Köszi
Sziasztok!
Van arra lehetőség, hogy egy általam meghatározott, a szerveremen lévő mappának a tartalmát kilistáztassam JS kóddal?
Továbbá lehetséges-e olyan, hogy JS kóddal elindítsak egy PHP kódot?
Előre is köszönöm a válaszokat!
But who is watching the guardians?
Taci
addikt
Szia!
Direktben a JS szerintem nem fog tudni hozzáférni a szerveren lévő tartalomhoz. Ehhez kell a PHP és a JS közötti kapcsolódás (második része a kérdésednek).
Én erre az Axios-t használom: [link]
(Használhatsz Ajaxot is, de sokmindenre kell figyelni később, ha "élesben" akarnád használni, úgyhogy jobban jársz, ha már eleve az Axios-szal kezdesz. Ajax: [link] )
Írnod kell egy .php szkriptet, ami listázza a mappa tartalmát, és ezt az adatot visszaadja Axios-on keresztül a JS-nek.
(Ha a -megfelelő- gép mellett leszek, segítek majd az Axios-ban, ha kell, addig nézd átt a linkelt oldalt, beszédesek a példák benne.)
Köszönöm a linkeket és a segítő szándékot, de ha ezen kívül nincs más opció, akkor hanyagolom. Alapelvem, hogy nem használok más által kidolgozott kódot.
But who is watching the guardians?
cattus
őstag
Mondjuk ez elég nagy butaság, de a te esetedben teljesen jó a böngészőben ott lévő fetch API is, nem kell axios vagy más 3rd party könyvtár.
Do the thing!
És egy JSON fájlok beolvasására használatos FETCH hogyan olvassa be, hogy hány darab és milyen nevű fájlok vannak egy adott mappában?
But who is watching the guardians?
cattus
őstag
Most visszaolvastam, ha a webszerveren lévő mappának a tartalmát akarod listázni, akkor arra van "beépített" megoldás, apache / nginx konfigot kell hozzá állítani [link]
A fetch szimplán egy HTTP kérést küld a meghatározott URL felé, majd visszaadja azt, ami jön válaszként.
Do the thing!
lafaty80
őstag
Sziasztok,
Belefutottam most egy idegesítő "hibába", checkmarx-nál.
Van pár tool, ahol jquery-s $.post() response-át betöltöm egy div-be.
Normál esetben ha csak szöveg jön vissza tettem bele encode-ot , azzal nincs is gond.
A gond ott kezdődik, hogy van olyan, hogy komplett táblázatot vagy form elemeket(select option részét) adom vissza. Ezt viszont bukom minden esetben, ha encode-olom pl.
.html() <- ehhez már encode kellene alapból.
.innerHTML() <- ez jó lenne nekem, de ezt meg checkmarx nem veszi figyelembe.
.append() <- ez is jó lenne nekem, de ezt sem veszi figyelembe a checkmarx
Van erre ötlet vagy megoldás?
Cuccaim: https://kit.co/lafaty
martonx
veterán
Szia!
Szólok, hogy nem azért nem válaszolunk, mert nem foglalkozunk a problémáddal, hanem mert nem küldtél példa jsfiddle / codepen kódot, amúgy meg szvsz rajtad kívül senkinek fingja sincs, hogy mi lehet az a checkmarx
Én kérek elnézést!
lafaty80
őstag
Ok, értem.
Checkmarx integrates automated software security technologies into DevOps
A probléma, ami most kezdte el csak zavarni a rendszert: DOM-based vulnerabilities
jsfiddle a kódot most dobtam össze (ne a szerkezetét nézzétek ), illetve a stackoverflow-ról szedtem egy escapeHTML megoldást, próbaképpen...
"data" lesz amit visszakapok, ez lehet ilyen formában, vagy json-ba ágyazva, igazából mindegy, ezért ezt használtam.
Most nálam a sima .append van beállítva erre checkmarx ezt mondja nekem: "The application's $.post embeds untrusted data in the generated output with append"
Sajnos legtöbb esetben csak url címre és sima string-re találok megoldást, az én verziómra nem.
Az a hab a tortán, hogy konkrét megoldási lehetőséget sem ajánl fel checkmarx, csak a sebezhetőséget írja le, tehát nem tudom milyen módon tudnám a számára elfogadható megoldást megcsinálni
Bár nem fontos szerintem a program php-s, és a $.post() is egy php-t hív meg, onnan jön vissza az eredmény(data) ide.
Remélem így elég lesz/lehet
Cuccaim: https://kit.co/lafaty
martonx
veterán
Az a baj, hogy ez nem js kérdés.
Önmagában, amit vizsgálnak valóban tud biztonsági probléma lenni, azaz a hiba jelzésük korrekt.
Bármikor előfordulhat, hogy amit ily módon betöltesz, abban van valami vicces javascript.
Ezt ők nyilván nem is fogják tudni helyetted megoldani. Gondolnám, hogy valahogy lehet azért a checkmarx-ot paraméterezni, hogy mire riasszon be, és mire nem.
Szóval a lehetőséeig szerintem az alábbiak:
1. újraírod a programodat, hogy abszolút ne használj ilyen js oldani utólagos kód betöltéseket (pl. mindent server side renderelsz, vagy ezeréves jquery helyett elkezdesz modern frameworköket használni Vuejs/React/Angular)
2. felparaméterezed a checkmarxot / felveszed a supportjukkal a kapcsolatot, hogy ignorálja ezt a biztonsági hibát.
Én kérek elnézést!
lafaty80
őstag
Sajnos jelenleg ez a verzió van, és a support válaszát várom.
De jelenleg nálunk sok, az elődöm által írt tool megy ilyen és hasonló megoldással, tehát az újraírás az elkövetkező időszakban nem opció.
A kérdésem ide azért jött, hogy lehet-e megoldás js/jquery-ben, ha support nem fogja ignorálni a hibát.
Cuccaim: https://kit.co/lafaty
martonx
veterán
Egyetlen megoldás lehet, ahogy írtam is: a totális újraírás
Én kérek elnézést!
nevemfel
senior tag
.innerHTML() <- ez jó lenne nekem, de ezt meg checkmarx nem veszi figyelembe.
Ez mit jelent, hogy "nem veszi figyelembe"?
innerHTML propertyvel tudsz beágyazni html-t anélkül, hogy escapelni kellene, és a böngésző nem fogja végrehajtani a beágyazott scripteket.
[ Szerkesztve ]
Forget your troubles, c'mon get happy
lafaty80
őstag
Ezt írtam meg a support-nak én is, a válaszukat várom.
Cuccaim: https://kit.co/lafaty
Silεncε
őstag
innerHTML propertyvel tudsz beágyazni html-t anélkül, hogy escapelni kellene, és a böngésző nem fogja végrehajtani a beágyazott scripteket.
Na várj, innerHTML esetén ugyanúgy lehetséges XSS, nem?
lanszelot
addikt
Hello,
Egy képnézegetőt csináltam, ami teljesen jól müködik.
De most bele raktam pár kepet, és nem jelennek meg a képek.
Ha más képeket rakok akkor semmi gond.
A kepekkel semmi gond.
VS Code Live serveren jól működik az oldal.
Csak ha feltöltöm a tárhelyre, akkor nem működik.
Nem lépi túl a tárhely keretet /infinity/
A képek max oldal hossza 1000px , tehát nem nagyok.
Amivel jól működik azok is ugyanekkorák.
Ha jobb klikk chome ban és console fül, ott ezt írja: Cross-Origin Read Blocking (CORB) blocked cross-origin response
Ha kicserélem a képeket, akkor ez a hiba megszűnik.
De a képekkel nincs baj.
Tárhelyen ott vannak a képek.
Mi a táltos manó lehet a gond?
/az oldalt sajnos nem tudom megosztani, édesanyám osztálytalálkozói, és sok személy van a képen nincs engedélyem leosztani/
Ami most eszembe jutott: a többi kép telefonnal van készítve.
Ezek amikkel baj van egy dvd -ről lett kimásolva, a dvd-n volt slider menü, de a képek könyvtárban voltak. Átméreteztem őket, de nem lehet, hogy a dvd valami akármit bele írt a képekbe, és az zavarja a CORB-t? Nem tudom van-e ilyen, csak agyalok mi lehet. Jpg képek.
[ Szerkesztve ]