ugrás a tartalomhoz

szóköz beírásának ellenörzése

dc-hungary · 2008. Már. 24. (H), 22.31
Olyan scriptre lenne szükségem, amivel ki lehet azt szűrni, hogy ha a tag az input mezőbe szóközt ír, akkor a script, úgy vegye mint ha nem is lenne ott semmi..
arra kéne, hogy pl, a regisztrációnál ne tudja szóközzel feltölteni az inputokat, és regisztrálni:)
hogyan lehet ezt megoldani?
 
1

ezt nézd meg:

eszkimoka · 2008. Már. 24. (H), 23.06
2

nemsikerült

dc-hungary · 2008. Már. 24. (H), 23.47
ebből még mindig nem jöttem rá, nézegettem a forrását is, de semmi .. :(, az inputot látom hogy ott van, azt át is tudnám alakítani, csak nem működik már a példa se a gépemen..
3

trim

gex · 2008. Már. 25. (K), 00.31
4

Szerintem logikailag tedd először helyére a kérdést!

s_volenszki · 2008. Már. 25. (K), 09.45
Szia!

Én azért szeretem a weblabort, és az itt fórumolókat (van néhány kedvencem!) mert határozottan arra ösztönöznek, hogy ne kész megoldást keress egy feladatra, problémára, hanem értelmezd, és utána a megoldás már csak egy kis ujjtorna!

Lehet, hogy rosszul gondolom, de szerintem én azzal segítek neked a legtöbbet, ha segítek megérteni, hogy miért kell megértened!

Ebből az aprobóbol gondold át logikailag mi a te helyzeted, és lehet, hogy mindössze egy favágó eljárást tudsz összehozni, de az a te megoldásod lesz, amit örökre megtanulsz! A szép az lesz benne, hogy hasonló helyzetben a meglévő megoldásoddal fogsz gondolkozni!

Tehát:

V.1

Az a te problémád, hogy van egy x hosszúságú adat nevű karakterláncod, amiben nem fordulhat elő szóköz.
Ez annyit tesz, hogy adat 1. karaktere != " " és adat 2. karaktere != " " ...adat x. karaktere != " ".
Ha jól megnézed, ez olyan, mintha a string egy tömb lenne, és az indexeknek megfelelő tartalmat viszgálnád. Mégha a tömböt nem is ismered, böngészgetve a js string objektum függvényeit pillanatok alatt találhatsz egy függvényt, pl.: charAt /kicsit finomabban: charCodeAt/, ami az épp aktuális helyzetben lévő karakterrel tér vissza, tehát:

adat.charAt(0) != " " adat.charAt(1) != " " ... adat.charAt(x) != " "

Tisztán látszik, hogy erre már csak egy cilust kell építeni, és minden egyes fordulóban elemezni az aktuális karakter pozíció tartalmát.

Ahogyan említettem favágó, de a te helyzetedben egy saját megoldás!

V.2

Ha az adat stringed hossza kötött, márpedig a beviteli mezővel korlátozhatod, akkor csinálhatnád a következőt is: Az adat stringben kicseréled az összes szóközt semmire. Hogy ez mire jó? Ezzel azt éred el, hogy ha volt szóköz az adat stringben akkor a JS által megkapot string hossza nagyobb lesz mint a csere utáni string:

ezanevem => csere előtt 8 csere után 8
ez a nevem => csere előtt 10 csere után 8

V.3

Használhatsz reguláris kifejezést.

V.4

Használhatsz előre megírt alkalmazásokat.



Azonban egy kédést engedje meg! Mi lesz akkor, ha legközelebb vessző nem lehet a beviteli mezőben? Ha nem érted meg ezt a helyzetet, valószínüleg arra is nyitsz egy topicot, ha megérted, átírod az alkalmazásodat " "-ról ","-re!



s_volenszki
5

v5

zila · 2008. Már. 25. (K), 10.49
Használod a már említett trim-et. Ha egy input csak szóköz(öke)t tartalmaz akkor a trim-elés végeredménye egy üres string, így erre már lehet megbízható feltételt írni (vagy a trim-elt string ürességét vizsgálod, vagy a string hosszát, aztán ha az nulla akkor mehet a hibaüzenet)