Показать сообщение отдельно
  #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'ах, просматриваемых в цикле?
Ответить с цитированием