Autor Zpráva
Jobík
Profil
Zdravím, dá se nějak zakázat vložení textu do inputu? Mám namysli aby nešlo, že si text nekde skopíruje a do inputu ho prostě vloží.
Nejde mi o to zakázat kopírování ale zaázat vkládání??
nightfish
Profil
nešlo by nastavit readonly? (to by ale samozřejmě mělo zabránit zápisu obecně, ne jen vložením přes schránku)
<textarea readonly='readonly'>...
Jobík
Profil
ne nešlo já potřebuji aby se tam dalo psát ale aby tam nešlo text vložit
Nox
Profil
Řešení teď nevím, ale počítej s tím, že to nejspíš nebude nepřekonatelné, ber to jen jako doplněk (zakázání JS, hraní si s Firebugem atd.)

Ale taky opatrně, aby to moc neomezovalo...třeba jednu dobu to bylo na Centru pro tělo zprávy a byl to opravdu opruz...
naštěstí se to dalo skopírovat do předmětu a od tama táhnutím myši skopírovat

Takže ještě k řešení samotnýmu buď nesmíš mít na stránce jiný inputy (bez readonly), nebo musí být blokovaný taky
Jobík
Profil
Mělo by to fungovat asi takto : ve chvili kdy do inputu kliknes prvni pismeno spustí se časomíra na jednu minutu po vypršení se input nastaví na readonly a nepude do něj psat, nakonec to vyhodí kolik slov napíšež za minutu.
Asi je zbytečné to tak zabezpečovat ale chci se vyhnou tomu že si text který je připraven k přepsání někdo zkopíruje a pak do inputu vloží
habendorf
Profil
Obavám se, že to půjde jen pro IE, tudíž je to v praxi nepoužitelné.
vertigo4
Profil
já bych to vyřešil tak, že bych počítal onkeypress
habendorf
Profil
vertigo4

vložíš, smažeš ...

Na to je jiná metoda, ale
1) jak jsem psal, funguje jen v IE
2) nelíbí se mi to a proto to zde nebudu šířit :o)
Bubák
Profil
<input type="text" onpaste="return false">
Funguje ve Firefoxu 3.0, IE, Safari, nefunguje ve starších Firefoxech a Opeře. Konqueror jsem netestoval.

chci se vyhnou tomu že si text který je připraven k přepsání někdo zkopíruje a pak do inputu vloží
Můžeš místo textu použít obrázek, nebo Flash, do flashe jde exportovat i kresba nebo prezentace z OpenOffice.
Ale nezabráníš tomu, aby si někdo předem napsal text jinam.
habendorf
Profil
A co třeba na onchange sledovat délku inputu? Může se změnit jen o 1 znak.

Pokud by onchange zlobilo, dá se použít onkeyup, ten by pak ale házel chybu i na dlouhé držení klávesyyyyyyyyyyyyyyyyy (ale opět jde testovat, zda jsou poslední znaky shodné).
Jobík
Profil
Ještě mě tak napadlo nedalo by se to řešit onPaste, jedniné co tam dělá border že když něco vložím napíše to alertem NE ale text to tam vloží chtělobyto aby se při vložení automaticky textarea vyprázdnil

<textarea onPaste="alert('ne')" rows="15" cols="36"></textarea>
Matty
Profil
Jobík
<textarea onPaste="this.value=''" rows="15" cols="36"></textarea> by fungovat mělo.
habendorf
Profil
Jobík

A proč nechceš sledovat tu délku? Imho by to bylo univerzální řešení, narozdíl od onpaste.
Jobík
Profil
to nevim jak bych to dělal
Jobík
Profil
habendorf
kdybys byl tak hodný a napsal kód/script
Jobík
Profil
Matty
nejde

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0