Autor Zpráva
Casper
Profil
Dobrý den, nechci nechat uživatele napsat do textarea volný řádek, jinými slovy, na každém řádku musí být minimálně jeden (viditelný) znak neboli nesmí udělat dvakrát enter (jenže znak odřádkování nevzniká jen stiskem enteru, nýbrž dalšími scripty, takže nějaké blokování enteru nepřipadá v úvahu). Nenapadá mě řešení, v JS se moc nevyznám, našel by se někdo ochotný s ukázkovým scriptem ?
Předem děkuji
Alphard
Profil
Casper:
Vaše vlákno již mizí i z témat bez reakcí. Javascript nemumím, ale kdyby vám stačilo po odeslání na server smazat všechny prázdné řádky, nebyl by to problém.
Casper
Profil
V PHP to není problém řešit, ovšem to není to co potřebuji...
Kcko
Profil
Výsledky hledání „javascript remove empty lines“ v Googlu:
 1 • Remove Empty Lines from Text
 2 • Remove trailing newlines (blank lines) ??? - JavaScript / Ajax ...
 3 • prettyprinter.de
 4 • How to delete blank space in text file in Java script Other Issues
 5 • CLOC -- Count Lines of Code
 6 • thephpcode: Cleaning/Stripping/Removing empty lines using PHP ...
 7 • Remove Line Breaks with Javascript
 8 • How to Remove Blank Lines From a Text File | eHow.com

Moderátor Chamurappi: Odkaz na Google nahrazen výsledky.
_es
Profil
var t = document.getElementById("id textarey"), s = t.value;
function uprav(){
  var v =  t.value;
  if(v !== s && (v.indexOf("\n\n") !== -1 || v.indexOf("\r\n\r\n") !== -1)) s = t.value = v.replace(/\n{2,}/g, "\n").replace(/(\r\n){2,}/g, "\r\n");
}
setInterval(uprav, 50);
Ešte je drobný problém s tým, že prvý a posledný riadok môže byť prázdny a tiež s riadkami v ktorých sú len neviditeľné znaky.
No to sa dá opraviť, mne sa s tým už nechcelo hrať. Ak to vyriešiš, môžeš to tu dať kód.
Neviem, či sa v niektorých prehliadačoch ešte nepoužíva kombinácia "\n\r" na koniec riadku, ak áno, tak to treba tiež zahrnúť.

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

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