Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 08.09.2014, 13:40
Профессор
Отправить личное сообщение для skrudjmakdak Посмотреть профиль Найти все сообщения от skrudjmakdak
 
Регистрация: 27.04.2012
Сообщений: 1,410

а я честно говоря вообще противник вот этого вот (имхо):
onclick='showAnswer(1)'

куда лучше обернуть в еще один див. навешать события циклом и работать с dom. может я не прав, но я бы сделал так. ни каких айдишников, номеров и прочей шняги
Ответить с цитированием
  #12 (permalink)  
Старый 08.09.2014, 13:52
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,201

Сообщение от Webtest
теперь ищу как сделать кое-что дургое...
Твои планы просто потрясают!

<!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'>
div.showAnswer {
	display: none;
}
</style>
<script type='text/javascript'>
function showAnswer(Obj,N) {
	if (Obj.value=='Ответить') {
		Obj.value='Отмена';
		document.getElementById('hdn_'+N).className='';
	} else { 
		Obj.value='Ответить';
		document.getElementById('hdn_'+N).className='showAnswer';
	}
};
</script>
</head>
<body>
<div class="showAnswer" id="hdn_1">
	<textarea name="answerArea" class="textareaForAnswer"></textarea>
	<input type="button" class="questionBtn" name="sendAnswer" value="Послать ответ">
</div>
<input type="button" class="questionBtn" name="answer" onclick='showAnswer(this,1)' value="Ответить">
</body>
</html>
Ответить с цитированием
  #13 (permalink)  
Старый 08.09.2014, 13:57
Профессор
Отправить личное сообщение для skrudjmakdak Посмотреть профиль Найти все сообщения от skrudjmakdak
 
Регистрация: 27.04.2012
Сообщений: 1,410

лучше используй jquery. кода меньше и париться тоже
<html>
<head>
</head>
<body>
	<div class="group">
		<div class="form" style="display: none;">
			<div><input type="text"></div>
			<div><input type="button" value="click me"></div>
		</div>
		<div><input type="button" value="open"></div>
	</div>
	<div class="group">
		<div class="form" style="display: none;">
			<div><input type="text"></div>
			<div><input type="button" value="click me"></div>
		</div>
		<div><input type="button" value="open"></div>
	</div>
	<script src="http://code.jquery.com/jquery-1.11.1.min.js"></script>
	<script>
	$('input[value="open"]').click(function () {
		$(this).parents('.group').find('.form').css('display', 'block');
	});
	</script>
</body>
</html>
Ответить с цитированием
  #14 (permalink)  
Старый 08.09.2014, 14:29
Аспирант
Отправить личное сообщение для Webtest Посмотреть профиль Найти все сообщения от Webtest
 
Регистрация: 10.06.2014
Сообщений: 63

ksa, большое спасибо, мастер.
Ответить с цитированием
  #15 (permalink)  
Старый 08.09.2014, 14:30
Аспирант
Отправить личное сообщение для Webtest Посмотреть профиль Найти все сообщения от Webtest
 
Регистрация: 10.06.2014
Сообщений: 63

skrudjmakdak, ну я хочу, для начала, яваскрипт подучить получше.
Ответить с цитированием
  #16 (permalink)  
Старый 08.09.2014, 19:32
Аспирант
Отправить личное сообщение для Webtest Посмотреть профиль Найти все сообщения от Webtest
 
Регистрация: 10.06.2014
Сообщений: 63

ksa, а как сделать тоже самое, но если заметно id будет класс?
Вот яваскрипт (я пробовал ваш пример изменить)
function showAll(tObj){
		if (tObj.value == 'Показать остальные сообщения') {
	        tObj.value = 'Скрыть остальные сообщения';
	        document.getElementsByClassName('hiddenTR').style.display = 'block';
	    } else {
	        tObj.value = 'Показать остальные сообщения';
	        document.getElementsByClassName('hiddenTR').style.display = 'block';
	    }
	}

Вот элемент
<tr class="hiddenTR">

ЦСС
tr.hiddenTR {
	display: none;
}

Кнопка
<input type="button" value="Показать остальные сообщения" class="questionBtn" onclick='showAll(this)'>
Ответить с цитированием
  #17 (permalink)  
Старый 08.09.2014, 20:43
Профессор
Отправить личное сообщение для skrudjmakdak Посмотреть профиль Найти все сообщения от skrudjmakdak
 
Регистрация: 27.04.2012
Сообщений: 1,410

оно?
<!DOCTYPE html>
<html>
<head>
<style type='text/css'>
div.showAnswer {
	display: none;
}
</style>
</head>
<body>
<div class="showAnswer" id="hdn_1">
	<textarea name="answerArea" class="textareaForAnswer"></textarea>
	<input type="button" name="sendAnswer" value="Послать ответ">
</div>
<input type="button" class="questionBtn" name="answer" value="Показать остальные сообщения">
<div class="showAnswer" id="hdn_1">
	<textarea name="answerArea" class="textareaForAnswer"></textarea>
	<input type="button" name="sendAnswer" value="Послать ответ">
</div>
<input type="button" class="questionBtn" name="answer" value="Показать остальные сообщения">
<div class="showAnswer" id="hdn_1">
	<textarea name="answerArea" class="textareaForAnswer"></textarea>
	<input type="button" name="sendAnswer" value="Послать ответ">
</div>
<input type="button" class="questionBtn" name="answer" value="Показать остальные сообщения">

<script type='text/javascript'>
var but = document.getElementsByClassName('questionBtn'); //найдет массив из 3 кнопок
for (var i = 0, ln = but.length; i< ln; ++i) {//делаем цикл по каждой кнопке
	but[i].onclick = function () { //присвоим каждой кнопке событие onclick
		if (this.value == 'Показать остальные сообщения') {
			this.value = 'Скрыть остальные сообщения';
			this.previousElementSibling.style.display = 'block'; //previousElementSibling найдет предыдущий dom элемент
		} else {
			this.value = 'Показать остальные сообщения';
			this.previousElementSibling.style.display = 'none';
		}
	}
}
</script>
</body>
</html>
Ответить с цитированием
  #18 (permalink)  
Старый 09.09.2014, 11:09
Аспирант
Отправить личное сообщение для Webtest Посмотреть профиль Найти все сообщения от Webtest
 
Регистрация: 10.06.2014
Сообщений: 63

skrudjmakdak, оно. Спасибо!
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Криво работает добавление в корзину Aprol Ваши сайты и скрипты 0 18.03.2011 14:04
Добавление класса для тега dwel87 Элементы интерфейса 9 11.03.2011 11:46
Добавление класса на елемент по id при фокусе на input Andrew_tl Events/DOM/Window 1 18.02.2010 19:09
ява-скрипт выборочно работает-не работает zeta777 Internet Explorer 0 20.01.2010 11:41
Не работает onClick добавление тега <s> AvaGet Общие вопросы Javascript 13 09.12.2008 18:41