Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Динамическое редактирование текста, и "очистка" от разметки 
:(
    Опции темы
psix
  Дата 22.10.2007, 01:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 23
Регистрация: 24.1.2005
Где: Н-ск

Репутация: нет
Всего: нет



Понимаю, подобные вопросы поднимаются часто, но вот под свою задачу не нашел... 
Так вот:
Есть 2 div'а, один собственно с текстом, другой с текстовой ссылкой, по которой динамически создается форма для редактирования текста, находящего в первом диве. При этом текст первого дива попадает в textarea. Сама ссылка с помощью css теряет видимость.  Плюс на форме имеются две кнопачки - одна для записи изменений другая для их отмены и возврату в первоначальное состояние, без перегруза страницы.
Вот примерный код:
Код

<script>
//для редактирования
function edit(idcom,act) {
  document.getElementById('edit'+idcom).className = "disable";
  document.getElementById(idcom).innerHTML = '<form name="editform" action="'+act+'" method="post">
<textarea name="text1" cols="30" rows="5">'+document.getElementById(idcom).innerHTML+'</textarea><br>
<input type="button" onclick="submit();" value="OK"><input type="button" onclick="cancel('+idcom+');" value="cancel"></form>';

}
//для отмены редактирования
function cancel (idcom) {
    document.getElementById('edit'+idcom).className = "enable";
    document.getElementById(idcom).innerHTML = '?????'; // <-вот здесь ступор чтой-то... а может все совсем и не так
}
</script>

 
Код

printf ("<div id=\"%d\" class=\"comment_text\">%s</div>
<div class=\"disable\" id=\"edit%d\"><a onclick=\"edit(%d,'%s');\" href=\"#edit\">edit</a></div>",
$num, $text, $num, $num, $action);


Так вот в чем ступор: 
1. Каким образом вернуть исходный текст, если нажата кнопка Cancel, отменяющая редактирование.
2. Как в JavaScript почистить текст от возможных символов переноса строки <br> и др., при открытии текста на редактирование.

Благодарю. 
    
PM   Вверх
Astraller
Дата 22.10.2007, 07:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 300
Регистрация: 1.8.2007
Где: $Украина[Кры м]->Феодосия

Репутация: 2
Всего: 5



Цитата

Так вот в чем ступор: 
1. Каким образом вернуть исходный текст, если нажата кнопка Cancel, отменяющая редактирование.
2. Как в JavaScript почистить текст от возможных символов переноса строки <br> и др., при открытии текста на редактирование.

Благодарю. 

1. Запомнить в переменную.
2. Регулярные выражения.

PS Концепция решения не верна - ИМХО. Кидать надо в iframe (designmode). И организовать wisiwig.


--------------------
A.S.T.R.A.L.L.E.R.: Artificial Synthetic Technician Responsible for Assassination, Logical Learning and Efficient Repair
PM MAIL WWW ICQ   Вверх
psix
Дата 22.10.2007, 18:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 23
Регистрация: 24.1.2005
Где: Н-ск

Репутация: нет
Всего: нет



Astraller, спасиБо за советы.
Решения оказываются всегда просты =)
А про регулярные в JavaScript, где хорошо и удобовъезжаемо описано? =) Хотя ясно, есть Google и собственно Vingrad, но как совет знатока...

По поводу P.S. - хочется просто, без излишеств. Ну и впрочем "каждый имеет право на выбор" =)  
PM   Вверх
cruelangel
Дата 22.10.2007, 19:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 319
Регистрация: 12.9.2007

Репутация: 4
Всего: 8



pcre.ru
PM MAIL   Вверх
Astraller
Дата 23.10.2007, 07:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 300
Регистрация: 1.8.2007
Где: $Украина[Кры м]->Феодосия

Репутация: 2
Всего: 5



От себя могу добавить что учился по книге: 
Фридл Дж. Регулярные выражения. Библиотека программиста. 2003
Очень не плохое пособие. smile 


--------------------
A.S.T.R.A.L.L.E.R.: Artificial Synthetic Technician Responsible for Assassination, Logical Learning and Efficient Repair
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0425 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.