Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 02.11.2015, 02:28
Аспирант
Отправить личное сообщение для rodiony4 Посмотреть профиль Найти все сообщения от rodiony4
 
Регистрация: 26.10.2015
Сообщений: 97

оказать скрытые элементы с определенным классом
Всем привет
радиокнопкой с id r1 показываются скрытые элементы с классом field
if ($('[id="r1"]:checked').val()) {
  $(".field").slideDown(500);
}

как можно перечислить id радиокнопок, по которым будут показываться скрытые элементы с классом field
так не получается
if ($('[id="r1", id="r2"]:checked').val()) {
Ответить с цитированием
  #2 (permalink)  
Старый 02.11.2015, 02:37
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,069

rodiony4,
может html сделать для примера?
Ответить с цитированием
  #3 (permalink)  
Старый 02.11.2015, 03:02
Аспирант
Отправить личное сообщение для rodiony4 Посмотреть профиль Найти все сообщения от rodiony4
 
Регистрация: 26.10.2015
Сообщений: 97

рони,
<input type="radio" name="name_of_button" value=1 id="r1">скрываем div1, div2, div3<br>
<input type="radio" name="name_of_button" value=2 id="r2">скрываем div1, div2<br>
<input type="radio" name="name_of_button" value=3 id="r3"><br>
<input type="radio" name="name_of_button" value=4 id="r4"><br>
<div id="div1" class="field">div1</div>
<div id="div2" class="field">div2</div>
<div id="div3" class="field">div3</div>
<div id="div4" class="field">div4</div>
<div id="div5" class="field">div5</div>

<script type="text/javascript">
$("input").click(function(){
   if ($('input[id="r1"]:checked').val()) {
     $("#div1, #div2, #div3").slideUp(500);
   }
   if ($('input[id="r2"]:checked').val()) {
     $("#div1, #div2").slideUp(500);
     $("#div3").slideDown(500);
   }
  if ($('input[id="r3, id="r4"]:checked').val()) {// ?????
     $(".field").slideDown(500);
  }
});
</script>
Ответить с цитированием
  #4 (permalink)  
Старый 02.11.2015, 03:11
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,069

Открывашка 232
rodiony4,
<!DOCTYPE HTML>

<html>

<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  </style>
  <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
  <script>
     $(function(){
       var s = $('[name="name_of_button"]');
       s.click(function() {
          $(".field").not($({r1 : "#div1, #div2, #div3", r2 : "#div1, #div2"}[this.id]).slideUp(500)).slideDown(500);   
      });
});


  </script>
</head>

<body>
<input type="radio" name="name_of_button" value=1 id="r1">скрываем div1, div2, div3<br>
<input type="radio" name="name_of_button" value=2 id="r2">скрываем div1, div2<br>
<input type="radio" name="name_of_button" value=3 id="r3"><br>
<input type="radio" name="name_of_button" value=4 id="r4"><br>
<div id="div1" class="field">div1</div>
<div id="div2" class="field">div2</div>
<div id="div3" class="field">div3</div>
<div id="div4" class="field">div4</div>
<div id="div5" class="field">div5</div>



</body>

</html>

Последний раз редактировалось рони, 02.11.2015 в 09:19.
Ответить с цитированием
  #5 (permalink)  
Старый 02.11.2015, 03:29
Аспирант
Отправить личное сообщение для rodiony4 Посмотреть профиль Найти все сообщения от rodiony4
 
Регистрация: 26.10.2015
Сообщений: 97

рони, спасибо, работает, но первый раз по клику (r1 или r2) дивы скрываются, а после второго раза - сначала открываются все дивы, а потом уже скрываются нужные
Ответить с цитированием
  #6 (permalink)  
Старый 02.11.2015, 07:28
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,069

rodiony4,
изменил смотрите снова
Ответить с цитированием
  #7 (permalink)  
Старый 02.11.2015, 16:51
Аспирант
Отправить личное сообщение для rodiony4 Посмотреть профиль Найти все сообщения от rodiony4
 
Регистрация: 26.10.2015
Сообщений: 97

рони, да, теперь все супер, спасибо!
Но еще одна проблема - на сайте дивы начинают скрываться только со второго раза (нажал одну радиокнопку - дивы не скрываются, нажал другую радиокнопку - дивы скрылись, далее все стабильно)
дело в том, что ваш код размещен в другой функции, вот как все выглядит на сайте:
function changeTextOnePage3(op_textinclship, op_currency, op_ordertotal)
{
op_hidePayments();
changeTextOnePage(op_textinclship, op_currency, op_ordertotal);

var jQnoC6 = jQuery.noConflict();
var s = jQnoC6('[name="shipping_rate_id"]');
s.click(function() {
  jQnoC6(".formField, .formLabel").not(jQnoC6({hashd5561dda4545a69195256a8ee62fcc91 : "#vm_myadres_div, #vm_myadres_input, #vm_pasport_div, #vm_pasport_input, #infoTK", hasha917f3643fcc7141bc83f55fb83a6c62 : "#vm_pasport_div, #vm_pasport_input, #infoTK"}[this.id]).slideUp(500)).slideDown(500);   
});
}

скорей всего мешает функция
s.click(function() {

заменял ее на
jQnoC6("input").click(function(){

но все равно - дивы начинают скрываться со второго раза
могу дать ссылку на страницу сайта
Ответить с цитированием
  #8 (permalink)  
Старый 02.11.2015, 18:56
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,069

rodiony4,
а какой смысл ставить код в функцию changeTextOnePage3 ?

пока не сработает эта функция кликать бесполезно
если функция срабатывает несколько раз -- она просто убивает код -- каждый второй раз.
Ответить с цитированием
  #9 (permalink)  
Старый 02.11.2015, 19:15
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,069

rodiony4,
заменить в коде выше 4 пост все $ на jQuery и добавить свои идентификаторы и ставьте в любое место.
Ответить с цитированием
  #10 (permalink)  
Старый 02.11.2015, 20:00
Аспирант
Отправить личное сообщение для rodiony4 Посмотреть профиль Найти все сообщения от rodiony4
 
Регистрация: 26.10.2015
Сообщений: 97

Сообщение от рони Посмотреть сообщение
rodiony4,
заменить в коде выше 4 пост все $ на jQuery и добавить свои идентификаторы и ставьте в любое место.
попробовал, не работает
Сообщение от рони Посмотреть сообщение
rodiony4,
а какой смысл ставить код в функцию changeTextOnePage3 ?
если ставить код вне этой функции - ничего работать не будет (пробовал, и не один я)
код, который я привел в начале темы, в этой функции работает
function changeTextOnePage3(op_textinclship, op_currency, op_ordertotal)
{
op_hidePayments();
changeTextOnePage(op_textinclship, op_currency, op_ordertotal);

var jQnoC6 = jQuery.noConflict();
	if (jQnoC6("input:checked").val() == "1") {
		jQnoC6("#vm_myadres_div, #vm_myadres_input, #vm_pasport_div, #vm_pasport_input, #infoTK").slideUp(500);
	}
	if (jQnoC6("input:checked").val() == "2") {
		jQnoC6("#vm_pasport_div, #vm_pasport_input, #infoTK").slideUp(500);
		jQnoC6("#vm_myadres_div, #vm_myadres_input").slideDown(500);
	}
	if (jQnoC6("input:checked").val() == "3") {
		jQnoC6(".formField, .formLabel").slideDown(500);
    }
}

если его обернуть функцией - не работает
$("input").click(function(){
......
});

но ваш код проще и короче, может можно его подшаманить, чтобы он корректно работал? Например, как то обойтись без click(function() {
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Скрытые элементы window newobject Events/DOM/Window 0 10.07.2014 17:34
как выбрать первого ребенка с определенным классом imedia Элементы интерфейса 2 26.05.2014 19:31
Как вставить изображение после тега с определённым классом borus Общие вопросы Javascript 1 20.01.2014 18:43
Найти все элементы с определенным id izcian Общие вопросы Javascript 5 17.12.2013 04:57
замена цвета в определенном теге с определенным классом Buru Events/DOM/Window 4 11.03.2011 11:12