Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 12.10.2012, 22:42
Интересующийся
Отправить личное сообщение для Aftal1ck Посмотреть профиль Найти все сообщения от Aftal1ck
 
Регистрация: 11.10.2012
Сообщений: 19

Передача text из div в поле value
Есть галерея, в ней по клику меняется изображение и один див замещает другой (посредством "style="display: block;", в данном диве содержится название файла, необходимо именно из активного дива ("style="display: block;") вытащить название файла и присвоить value в inpute.

Буду очень благодарен за помощь.
Ответить с цитированием
  #2 (permalink)  
Старый 13.10.2012, 02:12
Аватар для Demath
Профессор
Отправить личное сообщение для Demath Посмотреть профиль Найти все сообщения от Demath
 
Регистрация: 22.06.2012
Сообщений: 168

Получить в input текст div, вроде бы, так можно

<script type="text/javascript">
function sendValueInInput()
{
    a = document.getElementById('myInput');
    b = document.getElementById('myDiv');
    a.value = b.innerText;
}
</script>
<div id="myDiv" style="border: 1px solid red;">Текст <br>контейнера</div>
<input id="myInput" type="text">
<br>
<input type="button" value="Отправить" onclick="sendValueInInput()">

Последний раз редактировалось Demath, 13.10.2012 в 02:32.
Ответить с цитированием
  #3 (permalink)  
Старый 13.10.2012, 10:05
Интересующийся
Отправить личное сообщение для Aftal1ck Посмотреть профиль Найти все сообщения от Aftal1ck
 
Регистрация: 11.10.2012
Сообщений: 19

Суть в том, что в моем случае нужен активный див (т.е. style="display:block").
Приведу пример:
<div id="box_lol_container1" class="box_lol_container" style="overflow: auto;">
<div class="lol_div" style="display: block;">image-1.jpg </div>
<div class="lol_div" style="display: none">image-2.jpg </div>
<div class="lol_div" style="display: none">image-3.jpg </div>

Первое по умолчанию стоит содержимое с контентом "image-1.jpg", после клика по изображения "style="display: block" присваивается следующему диву, следовательно на месте "image-1.jpg" стоит уже текст "image-2.jpg", мне необходим текст из актуального дива с "style="display: block".
Ответить с цитированием
  #4 (permalink)  
Старый 13.10.2012, 11:08
Аватар для eirnvn
Кандидат Javascript-наук
Отправить личное сообщение для eirnvn Посмотреть профиль Найти все сообщения от eirnvn
 
Регистрация: 15.09.2011
Сообщений: 70

<div id="box_lol_container1" class="box_lol_container" style="overflow: auto;">
<div class="lol_div" style="display: block;">image-1.jpg </div>
<div class="lol_div" style="display: none">image-2.jpg </div>
<div class="lol_div" style="display: none">image-3.jpg </div>
<input type="text" id="input" value='' />
	<script type="text/javascript">
		var input = document.getElementById('input');
		var container = document.getElementById('box_lol_container1');
		var lol_divs = document.getElementsByClassName('lol_div');
		for(var i=0;i<lol_divs.length; i++) {
		var lol_div = lol_divs[i];
		var computedStyle = getComputedStyle(lol_div)|| lol_div.currentStyle; 
		if(computedStyle.display == 'block') {
			input.value = lol_div.innerHTML;
		}
		}
__________________
"I don't write to say what I think, but to know what I think"

Последний раз редактировалось eirnvn, 13.10.2012 в 11:15.
Ответить с цитированием
  #5 (permalink)  
Старый 13.10.2012, 11:19
Аватар для eirnvn
Кандидат Javascript-наук
Отправить личное сообщение для eirnvn Посмотреть профиль Найти все сообщения от eirnvn
 
Регистрация: 15.09.2011
Сообщений: 70

Ссылка: http://learn.javascript.ru/play/b14wr
Подскажите, как сделать чтоб запускалось здесь, а не в песочнице (к сожалению подзабылось) или ссылку, где об этом прочитать.
__________________
"I don't write to say what I think, but to know what I think"
Ответить с цитированием
  #6 (permalink)  
Старый 13.10.2012, 13:14
Аватар для Demath
Профессор
Отправить личное сообщение для Demath Посмотреть профиль Найти все сообщения от Demath
 
Регистрация: 22.06.2012
Сообщений: 168

eirnvn,

Замените открывающий тег [html] на [html run].
Ответить с цитированием
  #7 (permalink)  
Старый 13.10.2012, 16:47
Интересующийся
Отправить личное сообщение для Aftal1ck Посмотреть профиль Найти все сообщения от Aftal1ck
 
Регистрация: 11.10.2012
Сообщений: 19

Спасибо большое, с меня пиво, чай минимум)
Только одно но, скрипт выводит текст только с активного (style="display:block") дива на момент загрузки страницы, здесь необходимо выводить измененный текст при каждом клике, не переходя со страницы (динамически).
Ответить с цитированием
  #8 (permalink)  
Старый 14.10.2012, 00:12
Аватар для eirnvn
Кандидат Javascript-наук
Отправить личное сообщение для eirnvn Посмотреть профиль Найти все сообщения от eirnvn
 
Регистрация: 15.09.2011
Сообщений: 70

Пиво не катит, только молоко. За вредность.
Вариантов много, смотря ,что вы хотите, возможно так (кликать по картинке).
<div id="box_lol_container1" class="box_lol_container" style="overflow: auto;">
<div class="lol_div" style="display: block;">image-1.jpg </div>
<div class="lol_div" style="display: none">image-2.jpg </div>
<div class="lol_div" style="display: none">image-3.jpg </div>
</div>
<input type="text" id="input" value='' />
<script type="text/javascript">
		var input = document.getElementById('input'),
		container = document.getElementById('box_lol_container1'),
		lol_divs = document.getElementsByClassName('lol_div'),
                lol_div;
                input.value = lol_divs[0].innerHTML;
		
		container.onclick = function(e) {
			var target = e && e.target|| event.srcElement;
			var next = target.nextElementSibling ||target.parentNode.firstElementChild;
			if(!next) {next = target.parentNode.firstElementChild; next.style.display ='block';}
			else {next.style.display = 'block'};
			target.style.display = "none";
			input.value = next.innerHTML;
		}
/*	    ^  ^
	   ^^^^^^
	 | 	@  @  |
	 ( = ~ = )            *
         -	             **
	   *****	        *** 
	  **********        ***
   ******************   **
***********************  
 ********************                             */
	</script>
__________________
"I don't write to say what I think, but to know what I think"

Последний раз редактировалось eirnvn, 14.10.2012 в 08:39.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Идея сайта... Стоит двигацца дальше?! B-Vladi Ваши сайты и скрипты 313 16.12.2011 01:04
Горизонтальная прокрутка контента! andys Элементы интерфейса 5 26.06.2011 23:06
Вывод порядкового номера li в списке profxhtml Общие вопросы Javascript 4 13.04.2011 12:30
скролл для длинного текста не появляется... dschmitz (X)HTML/CSS 6 27.11.2010 02:34
как создать елемент с вложеными елементами scuter Events/DOM/Window 11 14.05.2008 16:15