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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Цитируем содержание блока ещё раз 
:(
    Опции темы
Dollor
Дата 20.10.2007, 18:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Делаю форум. Необходимо сделать функцию цитирования. Собственно..делаю smile
Имеем, например, блок:
Код

<div id="1">текст</div>

и кнопку что-то вроде:
Код

<a onclick="quote("1");">цитировать</a>

И форму типа:
Код

<textarea name="text" type="text" id="text"></textarea>


Смысл: тыкаем на кнопку цитировать, вызываем скрипт которые дублиурет содрежание из блока с id 1 в текстовую форму. Такое возможно сделать? Как? Было бы хорошо ещё и то, чтобы и вниз к этой форму textarea перребрасывало сразу...
PM MAIL WWW ICQ   Вверх
vasac
Дата 20.10.2007, 19:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1060
Регистрация: 4.5.2006

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



Видите над сообщением кнопку "быстрая цитата"? Оно?
PM WWW   Вверх
Dollor
Дата 20.10.2007, 19:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Цитата(vasac @  20.10.2007,  19:04 Найти цитируемый пост)
Видите над сообщением кнопку "быстрая цитата"? Оно?


Нет, не совсем то. Так как многие люди так и не поймут как этим пользоваться smile Хочется сделать просто при клике на текст этот чтобы в форму добавлялся весь текст сообщения...
PM MAIL WWW ICQ   Вверх
dsCode
Дата 20.10.2007, 19:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Dollor, ну так а в чем проблема? Берете innerHTML из этого дива, делаете необходимые преобразования (заменяете br'ы на \n, убираете экранирование спецсимволов и т.д.) и вставляете все это в textare'ю. Можно сделать для этого "дублирующий" объект с сообщениями на странице, чтобы не innerHTML брать, а сразу из объекта (тогда не придется делать преобразования - <span style="font-weight: bold;">test</span> на test и т.д.)


--------------------
the .code inside
:my music
PM MAIL WWW ICQ Jabber   Вверх
Dollor
Дата 20.10.2007, 20:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Алгоритм то мне ясен и он очень прост. Но я программист на php, с явой практически не знаком. Меня как раз и интересует процедура: взять из дива и вставить в textarea
PM MAIL WWW ICQ   Вверх
dsCode
Дата 20.10.2007, 20:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Dollor

Код

document.getElementById('text').value += document.getElementById('1').innerHTML;


но это, еще раз повторю, нужно будет дополнить различного рода преобразованиями (или - держать "дублирующий" объект сообщений и брать данные не из innerHTML div'a, а из этого объекта).

Это сообщение отредактировал(а) dsCode - 20.10.2007, 20:24


--------------------
the .code inside
:my music
PM MAIL WWW ICQ Jabber   Вверх
Dollor
Дата 20.10.2007, 20:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Цитата(dsCode @  20.10.2007,  20:22 Найти цитируемый пост)
держать "дублирующий" объект сообщений и брать данные не из innerHTML div'a, а из этого объекта

Если так делать, то трафик будет увеличен в несколько раз. Сам представь, каждое сообщение с форума будет загружаться два раза (хоть и выводится то один раз, но скачиватсья два раза) это ладно если не большие сообщения, а ведь бывает, что пишут большие тексты...
PM MAIL WWW ICQ   Вверх
dsCode
Дата 20.10.2007, 23:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Dollor
Цитата(Dollor @  20.10.2007,  20:50 Найти цитируемый пост)
Если так делать, то трафик будет увеличен в несколько раз. Сам представь, каждое сообщение с форума будет загружаться два раза (хоть и выводится то один раз, но скачиватсья два раза) это ладно если не большие сообщения, а ведь бывает, что пишут большие тексты... 

этого можно было не объяснять smile 


--------------------
the .code inside
:my music
PM MAIL WWW ICQ Jabber   Вверх
Dollor
Дата 21.10.2007, 09:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Можешь всё-таки помочь как-нибудь с этим?
PM MAIL WWW ICQ   Вверх
dsCode
Дата 21.10.2007, 14:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Dollor
Цитата(Dollor @  21.10.2007,  09:05 Найти цитируемый пост)
Можешь всё-таки помочь как-нибудь с этим?

с чем? я уже два раза написал, как надо делать (можно сделать). Что конкретно не понятно? Преобразования? .split('<br>').join('\n')split('&amp;').join('&') и т.д. Правда, когда будут сложные блоки ("цитата в цитате в цитаце в коде и снова в цитате, в ней ссылки и изображения и смайлики") -  тут сложнее реплейсы будет использовать (если вообще возможно - смотря как стили нарисованы). Вот, альтернативой и было предложено хранить "дублирующий" объект, но это, естественно, жрет траф. Тогда, кстати, самое оптимальное наверное, будет посыл аякс запроса для получения неформатированного текста из базы и вставка его в текстарию (все равно получается дублирующий траф, но уже для "одного" сообщения, а не всех). Но, для цитаты, это как-то слишком. Другое дело, если у тебя "edit in place" функция - тогда удобно - нажимаем "edit" и тут же на месте текста появляется форма для редактирования.

Это сообщение отредактировал(а) dsCode - 21.10.2007, 14:13


--------------------
the .code inside
:my music
PM MAIL WWW ICQ Jabber   Вверх
Dollor
Дата 21.10.2007, 15:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Тогда наверное попробую с аяксом как раз и сделать
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




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


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

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