Javascript.RU

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

Поиск элемента
Всем привет. Не могу понять, как написать код.
Есть html код
<div class='str'>
<div class='res'></div><input type='hidden' value='$r[id]' name='id'><div class='status'>$status</div>....

есть js
$(".in_str").click(function() {
		var action = "up_status";
		var res = $(this).siblings('.status');
		res.hide();
....
	});

Внутри класса res есть код, который как раз выводит div с классом .in_str
'<div class="in_str" id="'.$selected.'"><div class="'.$key.'" style="float: left;"></div><div class="status_word">'.$val.'</div><div class="clear"></div></div>';

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

Officeoff.ru,
Ответить с цитированием
  #3 (permalink)  
Старый 20.12.2014, 13:55
Аспирант
Отправить личное сообщение для Officeoff.ru Посмотреть профиль Найти все сообщения от Officeoff.ru
 
Регистрация: 14.03.2014
Сообщений: 64

Рони, я понимаю, что вопрос тупой, но все же...
Ответить с цитированием
  #4 (permalink)  
Старый 20.12.2014, 13:59
Аватар для Safort
Профессор
Отправить личное сообщение для Safort Посмотреть профиль Найти все сообщения от Safort
 
Регистрация: 23.12.2013
Сообщений: 1,856

Officeoff.ru,
дело в том, что нам не понятно чего ты хочешь, по этому и помочь не можем.
Ответить с цитированием
  #5 (permalink)  
Старый 20.12.2014, 14:15
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,070

Сообщение от Officeoff.ru
Есть html код
нету!!!
Сообщение от Safort
дело в том, что нам не понятно чего ты хочешь, по этому и помочь не можем.
Ответить с цитированием
  #6 (permalink)  
Старый 20.12.2014, 14:40
Аватар для MallSerg
Профессор
Отправить личное сообщение для MallSerg Посмотреть профиль Найти все сообщения от MallSerg
 
Регистрация: 07.03.2011
Сообщений: 1,127

var res = $(this).siblings('.status');

заменить на

var res = $(this).find('.status'); если искомый блок внутри элемента
или
var res = $(this).siblings().find('.status'); если искомый блок рядом с элементом

Последний раз редактировалось MallSerg, 20.12.2014 в 14:43.
Ответить с цитированием
  #7 (permalink)  
Старый 20.12.2014, 16:03
Аспирант
Отправить личное сообщение для Officeoff.ru Посмотреть профиль Найти все сообщения от Officeoff.ru
 
Регистрация: 14.03.2014
Сообщений: 64

Ок. Попробую написать иначе.
<div class='str'>
				<div class='res'></div><input type='hidden' value='$r[id]' name='id'><div class='status'>$status</div>
				<div class='number'><a href='$r[id]'>$r[user_num]</a></div>
				<div class='date'>$date</div>
				<div class='contr'><a href='/contragent/$r[client]'>$r[name]</a></div>
				<div class='redact'>
					<div class='bar'><a href='$r[id]'><div class='edit'></div></a></div>
					<div class='bar'><input type='hidden' value='$r[id]' name='id'><div class='delete'></div></div>
				</div>
				<div class='clear'></div>
			</div>";


Когда кликаешь на класс status

echo "<div style='position: absolute; margin-top: 11px; margin-left:-9px;'><div class='box-up'></div><div class='box'>";
			$forms_type = array(
			'green'=>'Текущий',
			'violet'=>'Оплачен',
			'yellow'=>'Выполнен',
			'red'=>'Просрочен'
			);
			$i = "-1";
			foreach ($forms_type as $key=>$val) {
				$i++;
				$selected = ($i == $status) ? 'active' : '';
				echo '<div class="in_str" id="'.$selected.'"><div class="'.$key.'" style="float: left;"></div><div class="status_word">'.$val.'</div><div class="clear"></div></div>';
			}
	echo "</div></div>";

$(".status").click(function(e){
		var action = "status";
		var page= $("#page").text();
		var id = $(this).siblings("input[name='id']").attr("value");
		var res = $(this).siblings('.res');
		$('.res').hide();
		$.post("/modules/action.php", {action:action, page:page, id: id}, function(data){
			if (data.length>0) {
				res.show();
				res.html(data);
			}
		});
	});
	
	// Меняем статус счета
	$(".in_str").click(function() {
		var action = "up_status";
		var res = $(this).siblings().find('.status');
		res.hide();
	});
Ответить с цитированием
  #8 (permalink)  
Старый 20.12.2014, 16:17
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,070

Сообщение от Officeoff.ru
$(".in_str").click
клик то работает? или нет
... если нет то поставьте сначали клик на элемент который не перезаписывается
$(".str").on("click" , ".in_str" , function() {}) потом ищите ваш элемент
на всякий случай html как небыло так и нет - где структура на момент клика
Ответить с цитированием
  #9 (permalink)  
Старый 20.12.2014, 17:07
Аспирант
Отправить личное сообщение для Officeoff.ru Посмотреть профиль Найти все сообщения от Officeoff.ru
 
Регистрация: 14.03.2014
Сообщений: 64

click работает.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Поиск элемента в тексте и его порядковый номер в нем antoshka1509 AJAX и COMET 7 05.11.2014 14:26
Поиск элемента под абсолютно позиционированным hijeane Общие вопросы Javascript 3 30.12.2013 18:19
Поиск элемента alex2012 jQuery 0 21.02.2012 19:37
Поиск самого длинного элемента Randomizer jQuery 9 14.03.2011 14:13
Поиск элемента по куску его Id gregOlsener Events/DOM/Window 1 25.08.2008 22:04