Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 25.03.2014, 13:34
Аспирант
Отправить личное сообщение для Officeoff.ru Посмотреть профиль Найти все сообщения от Officeoff.ru
 
Регистрация: 14.03.2014
Сообщений: 64

текст выбраного элемента в input
Всем доброго времени суток. Есть вопрос.
У меня есть input, при вводе в него подгружаются данные.
Стрелками вверх вниз, выбирается элемент.
Осталось сделать: подставить текст выбранного элемента в input.

var arrayLi=[];
$('.item').each(function() {
	arrayLi.push($(this));
});
var i=0,
number='',
count='undefined'!==typeof arrayLi?(arrayLi.length-1):0;
	function onKeyDown(event) {
		if(count!=0) {
			if(38==event.keyCode) {
				if(0<number) {
					arrayLi[number].removeClass('item_h');
					--number;
					--i;
					arrayLi[number].addClass('item_h');
				}
			}
			else if(40==event.keyCode) {
				if(i!=count) {
					if(arrayLi[i].hasClass('item_h') && i<count) {
					++i;
					}
					for(var l in arrayLi) {
						if(number==l) {
							arrayLi[number].removeClass('item_h');
						}
						if(l==i) {
							number=i;
							arrayLi[i].addClass('item_h');
						}
					}
				}
			var value = $("input[name='name']").attr("value"); // Думаю ошибка в этом
			$('#search_term').val(value);
			}
		}
		else {
			return;
		}
	}


Так выглядят подгружаемые элементы
$string .= "<div class='item'><div class='name'><input name='name' type='hidden' value='$item->name'></input><input name='price' type='hidden' value='$item->price'></input><div class='gets'>$item->name</div></div><div class='price'>$item->price</div></div>";


Сейчас при нажатии кнопки вниз, подставляются данные первого элемента. А как сделать, чтобы подставлялись данные выбранного пункта?
Ответить с цитированием
  #2 (permalink)  
Старый 25.03.2014, 13:55
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,124

Сообщение от Officeoff.ru
Так выглядят подгружаемые элементы
а как же они выглядят без php? и почему бы сразу несделать рабочий макет с минимальным html
Ответить с цитированием
  #3 (permalink)  
Старый 25.03.2014, 14:37
Аспирант
Отправить личное сообщение для Officeoff.ru Посмотреть профиль Найти все сообщения от Officeoff.ru
 
Регистрация: 14.03.2014
Сообщений: 64

Сообщение от рони Посмотреть сообщение
а как же они выглядят без php? и почему бы сразу несделать рабочий макет с минимальным html
Так а какая разница Php или html? Работать то будет с пхп.
<div class='item'><div class='name'><input name='name' type='hidden' value='Название'></input><input name='price' type='hidden' value='550'></input><div class='gets'>$item->name</div></div><div class='price'>$item->price</div></div>
<div class='item'><div class='name'><input name='name' type='hidden' value='Название2'></input><input name='price' type='hidden' value='750'></input><div class='gets'>$item->name</div></div><div class='price'>$item->price</div></div>

Пусть будет выглядеть так. Что поменяется?
Ответить с цитированием
  #4 (permalink)  
Старый 25.03.2014, 15:43
Аспирант
Отправить личное сообщение для Officeoff.ru Посмотреть профиль Найти все сообщения от Officeoff.ru
 
Регистрация: 14.03.2014
Сообщений: 64

Кто нибудь может подсказать?
Ответить с цитированием
  #5 (permalink)  
Старый 25.03.2014, 16:16
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,124

Officeoff.ru,
код скрипта неполный -- html и тот неполный и c остатками php -- короче полная background-color - по коду не на том месте скрипта нужно брать данные и уточнить где именно

<!DOCTYPE HTML>
<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">
 <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
 <style type="text/css">
 .item_h{
   background-color: #FF00FF;
 }
 </style>
</head>

<body>
<div class='item'><div class='name'><input name='name' type='hidden' value='Название'></input><input name='price' type='hidden' value='550'></input><div class='gets'>Название</div></div><div class='price'>550</div></div>
<div class='item'><div class='name'><input name='name' type='hidden' value='Название2'></input><input name='price' type='hidden' value='750'></input><div class='gets'>Название2</div></div><div class='price'>750</div></div>
<input id="search_term" name="">
<script>
var arrayLi=[];
$('.item').each(function() {
	arrayLi.push($(this));
});
var i=0,
number='',
count='undefined'!==typeof arrayLi?(arrayLi.length-1):0;
	function onKeyDown(event) {
		if(count!=0) {
			if(38==event.keyCode) {
				if(0<number) {
					arrayLi[number].removeClass('item_h');
					--number;
					--i;
					arrayLi[number].addClass('item_h');
				}
			}
			else if(40==event.keyCode) {
				if(i!=count) {
					if(arrayLi[i].hasClass('item_h') && i<count) {
					++i;
					}
					for(var l in arrayLi) {
						if(number==l) {
							arrayLi[number].removeClass('item_h');
						}
						if(l==i) {
							number=i;
							arrayLi[i].addClass('item_h');
						}
					}
				}
			}
           var value = $("input[name='name']",'.item_h').val();
		   $('#search_term').val(value);
		}
		else {
			return;
		}
	}
 $('#search_term').keydown(onKeyDown)
 </script>
</body>
</html>
Ответить с цитированием
  #6 (permalink)  
Старый 25.03.2014, 16:54
Аспирант
Отправить личное сообщение для Officeoff.ru Посмотреть профиль Найти все сообщения от Officeoff.ru
 
Регистрация: 14.03.2014
Сообщений: 64

Большое спасибо. Мне нужна была вот эта строка
var value = $("input[name='name']",'.item_h').val();
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
проблема со scroll Chrome Элементы интерфейса 2 21.10.2013 14:46
прогкрутка к якорям cOAPerator Общие вопросы Javascript 20 27.08.2013 03:30
нужно заставить одновременно работать слайдер и модальное окно обратной связи kvant355 Javascript под браузер 3 22.07.2013 16:34
Выравнять три дива в одной строке debugx (X)HTML/CSS 9 06.10.2011 12:03