Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 15.05.2013, 12:48
Аватар для utb
utb utb вне форума
Аспирант
Отправить личное сообщение для utb Посмотреть профиль Найти все сообщения от utb
 
Регистрация: 26.10.2011
Сообщений: 94

Форма комментариев при ответе
Приветствую,
вот интересует такое:
В блогах часто бывает, при комментарии по клику на ответить, форма ответа появляется снизу комментария.

а какой тут механизм?
получаем копию и вставляем после коммента? или надо все таки удалить форму основную, которая внизу, например

Заранее спасибо
Ответить с цитированием
  #2 (permalink)  
Старый 15.05.2013, 13:17
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,205

Сообщение от utb
а какой тут механизм?
Где пример твоего ХТМЛя?
Ответить с цитированием
  #3 (permalink)  
Старый 15.05.2013, 13:26
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

utb,
Простейшее, перенести форму скриптом под сообщение, но нун смотреть HTML страницы, посколь в форме часто бывают скрипты, которые при переносе возобновляют активность, тогда нужно реализовывать перенос без скриптов, удаляя их перед действием
Ответить с цитированием
  #4 (permalink)  
Старый 15.05.2013, 13:30
Кандидат Javascript-наук
Посмотреть профиль Найти все сообщения от qwerty-клавиатура
 
Регистрация: 12.04.2013
Сообщений: 132

formElement.style.display = 'none';

formElement.style.display = 'block';
Ответить с цитированием
  #5 (permalink)  
Старый 15.05.2013, 14:10
Аватар для utb
utb utb вне форума
Аспирант
Отправить личное сообщение для utb Посмотреть профиль Найти все сообщения от utb
 
Регистрация: 26.10.2011
Сообщений: 94

ХТМЛ в студию
<ul class="comments">
	<li>
		<div class="comment">
			<p>Тут коммент</p>
			<a href="#" class="otvet">Ответить</a>
		</div>
		<ul class="sub comments">
			<li>
				<div class="comment">
					<p>Тут коммент</p>
					<a href="#" class="otvet">Ответить</a>
				</div>
			</li>
		</ul>
	</li>
</ul>

<div id="respond">
<textarea name="comment" id="comment"></textarea>
<input type="submit" value="Отправить">
</div>


я взял в пример простую структуру для древовидных комментов (через списки)
внизу форма комментов простая (#respond), а ну еще куда нибудь поставить кнопку Отмена

Цитата:
бывают скрипты, которые при переносе возобновляют активность,
не понял, например? поля с добавлением файла как пример? или о чем то другом?

Последний раз редактировалось utb, 15.05.2013 в 14:18.
Ответить с цитированием
  #6 (permalink)  
Старый 15.05.2013, 15:15
Аватар для utb
utb utb вне форума
Аспирант
Отправить личное сообщение для utb Посмотреть профиль Найти все сообщения от utb
 
Регистрация: 26.10.2011
Сообщений: 94

набросал тут свой говнокод
<script>
	$(document).ready(function(){
		$('a.otvet').click(function() {
			$('#respond').appendTo($('.comment'));
		});
		$('a.cancel').click(function() {
			$('#respond').appendTo($('.inner'));
		});
	});
</script>


html подправил:

<ul class="comments">
	<li>
		<div class="comment">
			<p>Тут коммент</p>
			<a href="#" class="otvet">Ответить</a>
		</div>
	</li>
</ul>
<hr>
<div class="inner">
	<div id="respond">
		<a href="#" class="cancel">отмена</a>
	<textarea name="comment" id="comment"></textarea>
	<input type="submit" value="Отправить">
	</div>
</div>


теперь как понимаете, будет происходить везде по всем ссылкам .otvet
Ответить с цитированием
  #7 (permalink)  
Старый 16.05.2013, 16:14
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,205

Сообщение от utb
набросал тут свой говнокод
Могу предложить свой вариант...

<!DOCTYPE html>
<html>
<head>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<!--
<link rel="stylesheet" type="text/css" href="tmp.css" />
-->
<style type="text/css">
#respond {
	display: none;
}
</style>
<script type="text/javascript">
$(document).ready(function (){
	$('.otvet').click(function (){
		$(this).hide();
		$(this.parentNode).append($('#respond > .send').clone(true));
	});
	$('.send input').click(function (){
		/* тут делай что хочешь */
		var o=$(this).parents('.comment');
		o.find('.send').remove();
		o.find('.otvet').show();
	});
});
</script>
</head>
<body>
<ul class="comments">
	<li>
		<div class="comment">
			<p>Тут коммент</p>
			<a href="#" class="otvet">Ответить</a>
		</div>
		<ul class="sub comments">
			<li>
				<div class="comment">
					<p>Тут коммент</p>
					<a href="#" class="otvet">Ответить</a>
				</div>
			</li>
		</ul>
	</li>
</ul>

<div id="respond">
	<div class='send'>
		<form>
			<textarea></textarea>
			<input type="button" value="Отправить" />
		<form>
	</div>
</div>
</body>
</html>
Ответить с цитированием
  #8 (permalink)  
Старый 17.05.2013, 16:00
Аватар для utb
utb utb вне форума
Аспирант
Отправить личное сообщение для utb Посмотреть профиль Найти все сообщения от utb
 
Регистрация: 26.10.2011
Сообщений: 94

вот добавил отмену
спасибо большое ksa

з.ы. не могу сделать, чтобы можно было тут посмотреть

$(document).ready(function (){
		$('.otvet').click(function (){
			$(this).hide();
			$('#respond').hide();
			$(this.parentNode).append($('#respond > .send').clone(true));
		});
		$('.send input').click(function (){
			/* тут делай что хочешь */
			var o=$(this).parents('.comment');
			o.find('.send').remove();
			o.find('.otvet').show();
		});
		$('.cancel').click(function (){
			var o=$(this).parents('.comment');
			o.find('.send').remove();
			o.find('.otvet').show();
			$('#respond').show();
		});
	});


<ul class="comments">
	<li>
		<div class="comment">
			<p>Тут коммент</p>
			<a href="#" class="otvet">Ответить</a>
		</div>
	</li>
</ul>
<hr>
<ul class="comments">
	<li>
		<div class="comment">
			<p>Тут коммент</p>
			<a href="#" class="otvet">Ответить</a>
		</div>
	</li>
</ul>
<hr>
<div class="inner">
	<div id="respond">
		<div class="send">
			<a href="#" class="cancel">отмена</a>
			<textarea name="comment" id="comment"></textarea>
			<input type="submit" value="Отправить">
		</div>
	</div>
</div>

Последний раз редактировалось utb, 17.05.2013 в 16:02.
Ответить с цитированием
  #9 (permalink)  
Старый 17.05.2013, 21:34
Аватар для utb
utb utb вне форума
Аспирант
Отправить личное сообщение для utb Посмотреть профиль Найти все сообщения от utb
 
Регистрация: 26.10.2011
Сообщений: 94

Хм, а как убрать дули: при клике на каждую ссылку Ответить будет форма.
Но только там не красиво


Сделал
спасибо всем) сайт javascript прокачивает)

Последний раз редактировалось utb, 17.05.2013 в 21:50.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Смена картинки кнопки при нажатии и обратно при повторном нажатии mff Общие вопросы Javascript 15 03.05.2018 14:12
Как сделать так чтобы форма из php появилось не при выбора option и при нажатии на с sarik Общие вопросы Javascript 1 09.03.2013 14:10
При вставке браузером сохраненных логина и пароля, фон не меняется glanse Общие вопросы Javascript 2 08.05.2011 15:19
getAllResponseHeaders() и status имеют смысл только при readyState==4? mister_maxim AJAX и COMET 7 27.03.2011 19:08
30(1|2) редирект от сервера. Или как лучше сделать редирект при верной отсылке форма. pizzZ AJAX и COMET 2 18.02.2010 09:06