Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Условия в jQuery (https://javascript.ru/forum/jquery/31375-usloviya-v-jquery.html)

ibred 05.09.2012 13:58

Условия в jQuery
 
Здравствуйте.
Нужен маленький скрипт, который проверял бы на наличие класса у элемента, а далее присваивал бы display:block другому элементу, взаимности от того, проходит ли данное условие.

Код:

<div id="category_num">
<div id="cat_8"><input type="text" value="..."></div>
</div>
...
<div class="displaySub">Текст</div>

Например, если div с идентификатором равен, одному из чисел 6,8,34,88,78,79,80,81, то блоку
Код:

<div class="displaySub">Текст</div>
Присваивается css значение "display:block", иначе "display:none".

ksa 05.09.2012 14:16

Умение описать задачу практически отсутствует... :)

Цитата:

Сообщение от ibred
если div с идентификатором равен, одному из чисел 6,8,34,88,78,79,80,81

На странице может быть много ДИВов...
В твоем примере ИД ну никак не равет числу...

Может просто в ДИВе с id="category_num" находится некий ДИВ и вот если у него ИД после подчеркивания содержит цифру из списка...
Так?

ibred 05.09.2012 14:19

Цитата:

Сообщение от ksa (Сообщение 203106)
Может просто в ДИВе с id="category_num" находится некий ДИВ и вот если у него ИД после подчеркивания содержит цифру из списка...
Так?

Да.
То есть если число совпадает с тем, что идет после "_", то... :)

ksa 05.09.2012 14:23

Цитата:

Сообщение от ibred
Да.

Тогда как вариант...

<!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">
$(document).ready(function (){
	var olist={
		6:true,
		8:true,
		34:true,
		88:true
	};
	$('#category_num > div').each(function (){
		var val=this.id;
		val=val.split('_')[1];
		val=(olist[val])? 'block': 'none';
		$('.displaySub').css('display',val);
	});
});
</script>
</head>
<body>
<div id="category_num">
	<div id="cat_8">
		<input type="text" value="..." />
	</div>
</div>
<div class="displaySub">Текст</div>
</body>
</html>

ibred 05.09.2012 14:25

Огромное спасибо :)


Часовой пояс GMT +3, время: 12:37.