javascript: добавление параметров в функцию замыкания, объявленную внутри onclick - PullRequest
0 голосов
/ 09 июня 2011

У меня каверзная проблема.Я создаю используя DOM таблицу.После создания этой сетки я заполняю каждую ячейку красным или зеленым цветом, основываясь на определенных «правилах», которые я получаю из базы данных.В моем коде я зацикливаю всю сетку один раз для каждого «правила», поэтому иногда ячейка может быть окрашена более одного раза (но это не проблема).В этом же цикле я даю каждой зеленой ячейке функцию onclick, передавая идентификатор правила с помощью замыканий (этот идентификатор, очевидно, уникален для каждого полного цикла сетки, который, как я уже говорил, повторяется для каждого правила).Моя проблема в том, что я хочу отслеживать все идентификаторы правила, которые окрашивают ячейку в зеленый цвет.В данный момент я могу отслеживать только последний идентификатор правила, которое окрасило мою ячейку.Это код:

//here is the cycle and other operations to create the cell element and colouring it green

     //this is the function that binds the rule id to the onclick event, 
       passing it to a separate function
     pickedCell.onclick=(function(){
            var current_id_policy=id_policy

            return function(){policyToString(current_id_policy);
            }
            })();


      //this is the function called
      function policyToString(id_policy){
         alert("Rule n."+id_policy);
      }

Как я уже сказал, моя цель - отслеживать функцию policyToString КАЖДОГО правила id, которая окрашивает ячейку в зеленый цвет.Я искал в Интернете, но, вероятно, я не настолько хорош в этом (возможно!) Продвинутом кодировании.Есть какие-нибудь подсказки?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...