Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > JavaScript, Ajax
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 08.04.2015, 10:42   #1
der90
Пользователь
 
Регистрация: 12.02.2014
Сообщений: 73
По умолчанию События

Добрый день!
Код:
 var ASystem = $(".slide_sys");        
        for( var i = 0; i < ASystem.length; i++){
          new System(ASystem[i]);;
       }

    function System(el){
        this.sys = el;
        this.spaces = $(this.sys).find(".spoiler_block .block_input ul  li input");
        this.count =  $(this.sys).find(".spoiler_block .block_input ul li input:checked").length;
        this.placeText = $(this.sys).find(".spoiler_title .left_t span");

        this.initEvents();
        this.initStart();
    }
    System.prototype = {
        initEvents: function(){
            obj = this;
            obj.spaces.on('click', function(event){
                event.stopPropagation();
                obj.count = this.checked ? obj.count + 1 : obj.count - 1;
                obj.setCount();
            });
        },
        initStart:function(){
            this.placeText.text("Выбрано: " + this.count);
        },
        setCount:function(){
             this.placeText.text("Выбрано: " + this.count);
        }
       }
Проблема в том что события вешаются на все this.spaces у всех объектов ASystem[0 -n], но this.count и this.placeText изменяется только у ASystem[i] с максимальным i, как сделать что бы работало с каждым ASystem а не только с максимальным i?? что здесь не так?
der90 вне форума Ответить с цитированием
Старый 08.04.2015, 13:08   #2
Fenex
Форумчанин
 
Аватар для Fenex
 
Регистрация: 15.02.2012
Сообщений: 823
По умолчанию

Код:
obj.count = this.checked ? obj.count + 1 : obj.count - 1;
`this` замените на `obj`.
^-.-^ My GitHub

Последний раз редактировалось Fenex; 08.04.2015 в 17:57.
Fenex вне форума Ответить с цитированием
Старый 08.04.2015, 14:10   #3
nerv
Форумчанин
 
Аватар для nerv
 
Регистрация: 26.04.2010
Сообщений: 450
По умолчанию

Цитата:
Сообщение от Fenex Посмотреть сообщение
Код:
obj.count = this.checked ? obj.count + 1 : obj.count - 1;
`this` замените на `obj`.
чего?)))

Цитата:
Сообщение от der90 Посмотреть сообщение
Добрый день!
Проблема в том что события вешаются на все this.spaces у всех объектов ASystem[0 -n], но this.count и this.placeText изменяется только у ASystem[i] с максимальным i, как сделать что бы работало с каждым ASystem а не только с максимальным i?? что здесь не так?
без примера сложно сказать

Цитата:
Сообщение от Fenex Посмотреть сообщение
Код:
obj.count = this.checked ? obj.count + 1 : obj.count - 1;
можно заменить на http://javascript.ru/forum/misc/4825...tml#post318105
Тишина – самый громкий звук
nerv вне форума Ответить с цитированием
Старый 08.04.2015, 14:17   #4
lomastr_
Форумчанин
 
Регистрация: 16.01.2015
Сообщений: 672
По умолчанию

Цитата:
можно заменить на
а потом убить себя ап стену, не понимая что тут происходит
lomastr_ вне форума Ответить с цитированием
Старый 08.04.2015, 17:53   #5
Fenex
Форумчанин
 
Аватар для Fenex
 
Регистрация: 15.02.2012
Сообщений: 823
По умолчанию

Цитата:
Сообщение от nerv Посмотреть сообщение
чего?)))
ну да, точно =\
почему-то показалось, что сделан типичный фейл для таких мест, типа в трёх местах поменяли указатель, а тут забыли.
а щас смотрю - внезапно проверяется `checked` текущего элемента )
^-.-^ My GitHub

Последний раз редактировалось Fenex; 08.04.2015 в 17:59.
Fenex вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
События UtyOmOk C# (си шарп) 11 07.01.2019 11:51
События azarnik93 Помощь студентам 2 31.08.2013 13:37
События в WPF. Обращение к компонентам формы из события Casper-SC Общие вопросы .NET 3 25.07.2010 19:03
События session Общие вопросы C/C++ 2 21.06.2010 17:16
События yarilo JavaScript, Ajax 3 28.01.2010 23:18