Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Конструктор забора или взаимодействие элемнтов формы

Сообщения:  [1-10]    [11-20]   [21-30]  [31-32] 

 
 автор: KPETuH   (10.04.2014 в 18:01)   письмо автору
 
   для: immortal727   (10.04.2014 в 17:52)
 

Проверка на radio нужна для того чтобы скрыть ненужные дивы и чтобы поставить галочку в check3

  Ответить  
 
 автор: immortal727   (10.04.2014 в 17:52)   письмо автору
 
   для: KPETuH   (10.04.2014 в 17:47)
 

Как я понял как раз строка
var id = '#'+$(this).val(); 
и указывает что переменная id будет равняться значению value, которое совпадает с дивом?
А зачем тогда внутри функция стоит на проверку радиокнопочек?
if ($(this).prop('type') == 'radio') {
                $('.doska').css({'display': 'none'});
                $('input[name=check3]').prop('checked', true);
            }  


Теперь скрипт стал меньше намного, но сложноват пока в моем знании. Спасибо Вам большое, что убедили меня кое в чем и сильно помогли

  Ответить  
 
 автор: KPETuH   (10.04.2014 в 17:47)   письмо автору
 
   для: immortal727   (10.04.2014 в 17:39)
 

Первая функция обрабатывает все кроме check3, ей не так важно name сколько value который совпадает c id дива который нужно скрыть или показать.

Вторая обрабатывает только check3

  Ответить  
 
 автор: immortal727   (10.04.2014 в 17:39)   письмо автору
 
   для: KPETuH   (10.04.2014 в 17:32)
 

Да, очень виноват. Убрал все же onclick, убрал свою функцию ужасную, и доставил value. Всё также работает.
Но я никак не могу понять почему? Ведь в вашем коде нет проверки на check2, check1 и т.д. Как же так?

  Ответить  
 
 автор: KPETuH   (10.04.2014 в 17:32)   письмо автору
 
   для: immortal727   (10.04.2014 в 17:27)
 

нет оно НЕ так и есть.
обратите внимание в какой раз я вам говорю верните value, может вы приглядитесь к моей версии вашего html и поймете, почему я этого прошу.

если есть еще какие-то input, те которые вы здесь не приводите, так там и используйте свою функцию.

  Ответить  
 
 автор: immortal727   (10.04.2014 в 17:27)   письмо автору
 
   для: KPETuH   (10.04.2014 в 17:23)
 

Оно так и есть. Только если убрать onclik то вообще другие перестают работать. У меня есть другие инпуты с чекбоксами. А к ним идет функция как раз checkInvis () при срабатывании клика

  Ответить  
 
 автор: KPETuH   (10.04.2014 в 17:23)   письмо автору
 
   для: KPETuH   (10.04.2014 в 17:11)
 

Вот так у вас все должно выглядеть!!!
<input type="checkbox" name="check1" value="zaglushki" class="checkAndRadio" autocomplete="off" /><span>Столбцы с заглушкой с метал. уголками</span>
              <input type="checkbox" name="check2" value="lagi" class="checkAndRadio" autocomplete="off" /><span>Поперечный брус</span>
              <input type="checkbox" name="check3" class="checkAndRadio" autocomplete="off" /><span>Строганная доска</span>
              <input type="radio" name="rad" value='zazor' autocomplete="off" /><span class="radio" >Укладка с зазобром</span>
              <input type="radio" name="rad" value='doska_spl' autocomplete="off" /><span class="radio">Сплошной</span>
              <input type="checkbox" name="check4" value="beton"class="checkAndRadio" autocomplete="off" /><span>Бетонирование</span>


$(document).ready(function(){
    
        $('input[name!=check3]').on('click', function () {
        var id = '#'+$(this).val();
        if ($(this).prop('checked')) {
            if ($(this).prop('type') == 'radio') {
                $('.doska').css({'display': 'none'});
                $('input[name=check3]').prop('checked', true);
            }    
            $(id).css({'display': 'block'});
        } else {
            $(id).css({'display': 'none'});
        }
        });
        $('input[name=check3]').on('click', function () {
            if ($(this).prop('checked')) {
                $('.doska').css({'display': 'none'});
                $('input[type=radio][value=doska_spl]').prop('checked', true);
                $('#doska_spl').css({'display': 'block'});
            } else {
                $('.doska').css({'display': 'none'});
                $('input[type=radio]').prop('checked', false);
            }
        });
        
    });

  Ответить  
 
 автор: immortal727   (10.04.2014 в 17:16)   письмо автору
 
   для: KPETuH   (10.04.2014 в 17:11)
 

Там только на срабатывание чекбокса с именем "check3", но у меня и другие есть

Сейчас пробую под другой писать, чтоб без онклика для check2, но не получается, потому что непонятен код ваш во многом
$('input[name!=check2]').on('click', function () {
        var id = '#'+$(this).val();
        if ($(this).prop('checked')) {
            $('input[name=check3]').prop('checked', true);
            $(id).css({'display': 'block'});
        } else {
            $(id).css({'display': 'inline'});
        }
        });
        
        $('input[name=check2]').on('click', function () {
            if ($(this).prop('checked')) {
                $('#lagi').css({'display': 'block'});
            }
            else {
              $(id).css({'display': 'inline'});
            }
        });

  Ответить  
 
 автор: KPETuH   (10.04.2014 в 17:11)   письмо автору
 
   для: immortal727   (10.04.2014 в 17:01)
 

я вам уже все написал мой код обрабатывает ВСЕ чекбоксы и ВСЕ radio, ваши функции не несут сейчас никакой полезной нагрузки, ваши oncklick тоже лишние, конечно если вы вернете в код value, как я вам писал, но вы так и не сделали.

  Ответить  
 
 автор: immortal727   (10.04.2014 в 17:01)   письмо автору
 
   для: KPETuH   (10.04.2014 в 16:57)
 

Почему не работают. Другие-то кнопки как раз используют эту функцию при клике. А если я уберу, то работать будет только одна с чекбоксом в свзяке с радиокнопочками. Я бы с радостью избавился от этого мусора, но не знаю как обойтись без этого, как упросить всю эту ересть, что я писал до этого.

  Ответить  

Сообщения:  [1-10]    [11-20]   [21-30]  [31-32] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования