Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 23.04.2014, 08:50
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,228

Сообщение от borus
просто на странице несколько таких baget_select
Такого не должно быть. ИД уникально на странице...
Ответить с цитированием
  #12 (permalink)  
Старый 23.04.2014, 14:02
Аватар для borus
Кандидат Javascript-наук
Отправить личное сообщение для borus Посмотреть профиль Найти все сообщения от borus
 
Регистрация: 07.12.2012
Сообщений: 147

Сообщение от depp Посмотреть сообщение
$(this).parent().prev(). //по моему такой путь до блока с выбором типа багета
попытался использовать эту часть предложенного вами решения в цикле, чтобы проверить тексты селектов. Почему-то всегда этот код
var elements = $('span.addtocart-button');
		for(var i=0; i<elements.length; i++) {
			var selection = $(elements[i]).parent().prev().find('#baget_select');//выбираю в соседней ветке DOM структуры select с #baget_select
			if (selection.length > 0 ){
				if(selection.text()=='Выберите багет'){
					alert('отключить эту кнопку!');
				} else {
					alert('оставить эту кнопку!');
				}
			}
		}

проходит по ветке else условного оператора, а сам alert(selection.text()) выводит текст вида "Выберите багет┘темныйсветлый"
где под ┘ я имею в виду перевод на новую строку.
а вот html-код того, что по идее отлавливается в selection:
Код:
<select name="customPrice[0][10]" required="" id="baget_select">
	 <option disabled="">Выберите багет</option>
	 <option value="5788">темный</option>
         <option value="5789">светлый</option>						  
</select>
Как же проверить, какое значение стоит в select'ах, просматриваемых в цикле?
Ответить с цитированием
  #13 (permalink)  
Старый 23.04.2014, 22:14
Профессор
Отправить личное сообщение для depp Посмотреть профиль Найти все сообщения от depp
 
Регистрация: 22.04.2014
Сообщений: 151

я сейчас толком не вдавался в ваш код. но судя по тому что я увидел вы по прежнему используете множество одинаковых id на странице. id - это уникальный идентификатор элемента на странице. не может быть двух одинаковых id. иначе пропадает уникальность. используйте class.

далее для цикла есть хороший оператор each. используейте его.
$( ".baget_select" ).each(function() {
    $( this ).length // вот длина вашего объекта. не знаю что вы с ней делаете дальше...
});
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как сравнить сессию и то, что введено в поле Nailya Общие вопросы Javascript 20 17.06.2013 18:08
как сделать что бы при открытии страницы сразу открылось большое фото oksanaweb Общие вопросы Javascript 1 05.06.2013 02:17
Как ввести в поле ввода значение где есть javascript MOZG Общие вопросы Javascript 8 19.04.2013 10:28
Кто как учит/учил/ будет учить Английский ? DjDiablo Оффтопик 53 18.12.2012 21:01
Как проверить на этом-ли хостинге стоит сайт из определнного домена? Gamestop Серверные языки и технологии 3 05.11.2012 06:51