Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 15.11.2013, 00:22
Кандидат Javascript-наук
Отправить личное сообщение для cha0s Посмотреть профиль Найти все сообщения от cha0s
 
Регистрация: 21.10.2013
Сообщений: 125

Помогите с выборкой значений
Имеется такой html

<div id="results">
<div position_title="1" id="option-242" class="option radio">
<div class="fields">
<div>
<input type="radio" name="option[242]" value="92" id="option-value-92">
<label for="option-value-92">5 x 7</label>
</div><div>
<input type="radio" name="option[242]" value="93" id="option-value-93">
<label for="option-value-93">6 x 6</label>
</div></div>
</div>
<div position_title="1,1" id="option-270" class="option">
<label style="width:150px;"><span class="required">*</span>RSVP OR INSERT STYLE:</label>

<div  class="fields">
<select name="option[270]">
<option value=""> --- Please Select --- </option>
<option value="336">DOUBLE SIDED RSVP POSTCARD</option>
</select>
</div>
</div></div>


то есть алгоритм такой
1)Обязательно только то что выбрано внутри контейнера div id="results"
2) Если пользователь кликнул по radio кнопке получить ее id="" а дальше по этому id считать значение с label который с таким-же for именем(ну только то что в лабеле текст находится).
3) Так-же само только уже в случае с select.

Спасибо.

Последний раз редактировалось cha0s, 15.11.2013 в 00:26.
Ответить с цитированием
  #2 (permalink)  
Старый 15.11.2013, 00:34
Кандидат Javascript-наук
Отправить личное сообщение для cha0s Посмотреть профиль Найти все сообщения от cha0s
 
Регистрация: 21.10.2013
Сообщений: 125

почему-то не получается даже selector настроить на click по radio кнопке фиксировать....

$('#results input[type=\'radio\']:checked').click(function() {....................

не работает подобный selector...

Последний раз редактировалось cha0s, 15.11.2013 в 01:22.
Ответить с цитированием
  #3 (permalink)  
Старый 15.11.2013, 10:00
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,225

Сообщение от cha0s
Если пользователь кликнул по radio кнопке получить ее id="" а дальше по этому id считать значение с label который с таким-же for именем(ну только то что в лабеле текст находится).
Как вариант...

<!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">
</style>
<script type="text/javascript">
$(function (){
	$('#results input:radio').click(function (){
		alert($(this).next('label[for="'+this.id+'"]').text());
	});
});
</script>
</head>
<body>
<div id="results">
	<div position_title="1" id="option-242" class="option radio">
		<div class="fields">
			<div>
				<input type="radio" name="option[242]" value="92" id="option-value-92">
				<label for="option-value-92">5 x 7</label>
			</div>
			<div>
				<input type="radio" name="option[242]" value="93" id="option-value-93">
				<label for="option-value-93">6 x 6</label>
			</div>
		</div>
	</div>
	<div position_title="1,1" id="option-270" class="option">
		<label style="width:150px;"><span class="required">*</span>RSVP OR INSERT STYLE:</label>
		<div class="fields">
			<select name="option[270]">
				<option value="">--- Please Select ---</option>
				<option value="336">DOUBLE SIDED RSVP POSTCARD</option>
			</select>
		</div>
	</div>
</div>
</body>
</html>
Ответить с цитированием
  #4 (permalink)  
Старый 15.11.2013, 10:00
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,225

Сообщение от cha0s
Так-же само только уже в случае с select.
У твоего селекта нет ИД...
Ответить с цитированием
  #5 (permalink)  
Старый 27.11.2013, 00:29
Кандидат Javascript-наук
Отправить личное сообщение для cha0s Посмотреть профиль Найти все сообщения от cha0s
 
Регистрация: 21.10.2013
Сообщений: 125

спасибо с радио кнопками проблема решина, по поводу select, как получить информацию выбранную в нем, вот смотри есть нечто такое....

Задача вообщем такая имеется куча select элементов http://jsfiddle.net/z79cn/ (там работает выбор, но только первого шага) (SELECT элементов может быть сколько угодно, по имени select элемента - обращаться нельзя! надо как-то так знать что это выбирается именно этот SELECT (как-то может положением в DOM таблице я не знаю даже....) как такое намутить? заплет(

Задача:
Имеется n-ное количество select элементов, построить строку в виде выбранных значений этих select элементов, по имени select элемента обращаться нельзя, если в процессе выбора, пользователь захочет вернутся на предыдущие selecti(а строка уже с выбором построена), то поменять в строке только те значения которые изменил пользователь!

Вот как такое сделать, сложность вся как понять какой список юзает пользователь? если имя его юзать нельзя.... но можно например узнать как-то положение этого Selecta в DOM таблице... например в ДОМЕ Selecti находятся на 20,30,40,50 позициях, построилась строка из выбранных уже нами этих 4 selectov, например , ну и каким образом например пользователь поменял значение selecta который в доме находится на 30 позиции, поменять только строку в test1,XXXXXXXX,test3,test4 этом месте, такое вообще реализуется? или тут надо не строку а массив брать? где 0 ячейка это первый select, 1 ячейка 2-ой select? и потом в виде строки выводить это? или как? я буду рад даже просто теорию если расскажите))))!

Последний раз редактировалось cha0s, 27.11.2013 в 00:53.
Ответить с цитированием
  #6 (permalink)  
Старый 27.11.2013, 00:57
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

cha0s, тут бы объект типа Map помог, да вот беда с кроссбраузерностью. Можешь впринципе создавать свойство у DOM-элемента select, которое будет указывать на <span> с текстом.
Вобще, в задачу особо не вникал, полностью вопрос не читал..
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #7 (permalink)  
Старый 27.11.2013, 01:37
Кандидат Javascript-наук
Отправить личное сообщение для cha0s Посмотреть профиль Найти все сообщения от cha0s
 
Регистрация: 21.10.2013
Сообщений: 125

Вот для примера
достаточно просто слов SMALL,LARGE, DAMASK и т.д тупо строку склепать...

То есть например есть 6 SELECT, пользователь делает выбор и сверху строится строка его выбора, вроде пока не так сложно, НО когда пользователь захочет поменять выбранное значение какое-то ранние, мне как-то надо знать где оно в строке... чтоб только этот кусочек заменить... не знаю честно что тут лучше и как быть), еслиб был бы просто последовательный выбор без возможности изменить было бы вообще все просто строку через .append сделал да и все)), но тут дилемма в том как я могу знать в каком SELECT меняется значение, и уж тем более знать где оно в строке находится чтоб сделать строке replace на другое значение;DDD (имя selecta нельзя использовать - hard code не прокатит)

Последний раз редактировалось cha0s, 27.11.2013 в 01:40.
Ответить с цитированием
  #8 (permalink)  
Старый 27.11.2013, 18:33
Кандидат Javascript-наук
Отправить личное сообщение для cha0s Посмотреть профиль Найти все сообщения от cha0s
 
Регистрация: 21.10.2013
Сообщений: 125

Спасибо, только заметил что почему-то в моем примере он не корректно работает

http://jsfiddle.net/z79cn/

выбери например первых 3-ри элемента(LARGE) - все ок, а потом попробуй поменять 2-ое значение на SMALL, он в строке меняет первую позицию), из-за чего это происходит? я заменил
var selects = document.getElementsByTagName('select');

это на свое
var selects = $('[position_title ^= 3] select');

так как мне не надо все selecti, а только определенные, ну цикл твой не ломается все четко определяет что 6 selectov у меня, что ему не нравится в коде? странно а твой пример работает нормально))
Ответить с цитированием
  #9 (permalink)  
Старый 27.11.2013, 20:26
Кандидат Javascript-наук
Отправить личное сообщение для cha0s Посмотреть профиль Найти все сообщения от cha0s
 
Регистрация: 21.10.2013
Сообщений: 125

Сообщение от Rise Посмотреть сообщение
одинаковые значения разных селектов одновременно выведенные в строку.
упс сорри не тот линк дал)

http://jsfiddle.net/z79cn/1/

вот этот построен на базе твоего кода, разница только в том что я выбераю не все Selecti а только те у которых есть атрибут со значением position_title=3*, выбери например у первых двух значения LARGE, а потом у 2-го поменяй значение на SMALL, он уже заменяет в строке не то что нужно) значение первого селекта переписывает... а разницы от твоего кода нету не какого)) только в выборе условие стоит, мы имеем тот-же самый массив...

Последний раз редактировалось cha0s, 27.11.2013 в 20:30.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите решить задачку. Андрей_ Javascript под браузер 3 26.06.2012 16:21
Помогите исправить ошибки. AJAX на MooTools 1.11 dron79 Библиотеки/Тулкиты/Фреймворки 0 26.08.2010 10:40
Помогите! Многоуровневые вкладки! sergeeeeee Элементы интерфейса 2 02.08.2010 23:50
Народ, помогите ... 2 selecta | передача значений EuGen Элементы интерфейса 2 14.07.2010 05:51
Переодическое обновление значений для графика, функция для обновления значений yupa87 Общие вопросы Javascript 0 09.07.2009 14:48