Počítání znaků v TEXTAREA

6 příspěvků

Archiv diskusního fóra

Fórum je uzavřené a slouží pouze ke čtení. Některé informace mohou být zastaralé.

  1. Potřeboval bych nějakým způsobem v reálném čase počítat znaky uvnitř textarea - tzn. jakmile připíšete další znak, tak se počet o 1 zvýší, něco jako počítadlo znaků u Oskara na webu při odesílání smsky. Předpokládám, že to půjde nějak vyřešit přes JavaScript, ale absolutně nemám tušení jak na to - poradíte mi prosím někdo? Předem díky..
  2. a co tak si na tom oskarovi rovnou zobrazit zdroják a přečíst si to? zřejmě by to mělo jít pomocí atributu size, ale nejsem si jist leho existencí, spíše asi funkce len nebo lenght nebo jak se v javascriptu jmenuje použít na vlastnost value daného objektu textarea
  3. Ach jo, není nad konstruktivní odpověď :( Zdroják jsem si samozřejmě zobrazil, jenomže ty JavaScripty tam jsou neuvěřitelná prasárna, jsem rád, když porozumím nějakému jednoduššímu skriptu, u tohohle prostě nemám šanci, JavaScriptem se normálně nezabývám, ale tohle asi jinak než přes JavaScript ošetřit nepůjde... Myslím, že lepší než odpověď typu "zobraz si zdroják" či "nebo jak se v javascriptu jmenuje" asi tomu, kdo se ptá, nepomůže :(
  4. Ak máš takéto HTML: <textarea id="textarea" cols="50" rows="10"></textarea> <div id="counter">0</div> Tak potom si sprav funkciu, ktorá zistí dĺžku textu v textarea a zapíše ju do divu counter: function updateCounter () { var textarea = document.getElementById ("textarea"); var counter = document.getElementById ("counter"); if (counter.innerHTML != textarea.value.length) counter.innerHTML = textarea.value.length; } Potom nastav túto funkciu pre udalosti, kedy chceš, aby sa obnovila hodnota počítadla (napr. onkeyup, onkeydown, onkeypress alebo aj onmousemove...) Problém bude, ak používateľ vloží text cez kontextové menu. V IE by sa dala použiť udalosť onpropertychange a v Mozille napr. DOMCharacterDataModified, ale už to začne byť komplikovanejšie. Najjednoduchšie je nenastavovať túto funkciu žiadnej udalosti a spúšťať ju periodicky, dajme tomu každých 100 milisekúnd: <body onload="setInterval(updateCounter, 100)">
  5. No super, děkuju moc. Relativně jednoduché řešení, kterému dokonce i rozumím, přesně tohle jsem potřeboval - ještě jednou díky!
  6. To je přesně to, co jsem myslel, jen jsem byl po ránu ospalý a nechtělo se mi hledat přesné názvy těch vlastností, nicméně na správnou cestu to člověka přivést imho mohlo :-)

← Zpět na všechna témata