Skie
19.08.2008, 15:57:55
Czy da się za pomocą replace() podmieniać białe znaki na dany tekst? W jaki sposób?
Chodzi mi o to, żeby np znacznik przejścia do następnej linii (\n) był zamieniany na tekst [nowa_linia].
Trojan
19.08.2008, 17:54:42
<?php
$enter[0] = chr(13);
$enter[1] = chr(10);
$source = str_replace($enter, '[nowa_linia]', $source); ?>
//sorrki nie zobaczyłem ze to ma być w JS-ie (tak by to wygladało w php)
kipero
19.08.2008, 18:51:15
Skie
19.08.2008, 20:52:32
Ten artykuł jest z całą pewnością pomocny, ale chyba w zły sposób się za to zabrałem. Tzn. nie sprawdzałem, ale być może ta metoda string.replace() działa na całych wartościach pól tekstowych, lecz w moim przypadku to jest chyba bezcelowe, gdyż obszar edytowany przez JavaScript nie jest całą zawartością pola <textarea> lecz jedynie częścią, która jest zaznaczona obecnie myszką. Czy w takim przypadku da się też rozpoznać przejścia do następnej linii?
paziek
19.08.2008, 22:57:05
do wyciągania zaznaczonej częsci w polu textarea skorzystaj z .selectionStart .selectionEnd oraz substring, substr, slice
Poszukaj na MDC z czym to sie je (google => MDC .selectionStart)
No i później już sobie robisz zamianę przy pomocy replace, łączysz to co było przed zaznaczeniem + zaznaczenie + to co jest za zaznaczeniem i podmieniasz .value textarea na nową wartość.
Skie
20.08.2008, 08:02:51
Ale chodzi mi o to, że ja już mam taki skrypt zrobiony właśnie na podstawie SelectionStart i SelectionEnd, ale nie jestem pewien czy on pobiera białe znaki.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę
kliknij tutaj.