dom
  • dojo
  • 2016-05-03 4 views 0 likes 
    0

    Привет Я пытаюсь добавить прослушиватель событий к динамически созданному элементу "<a></a>", но без успеха.Dojo - добавить прослушиватель событий к динамически созданному элементу

    Вот элемент/элемент:

    var item = "<div class='item' id='" + id + "'>" 
          + "<div class='cell ion-chevron-right'>" 
          + "<span class='cell items'>" + text + "</span>" 
          + "<a id='" + id + "_icon' class='mIcon ion-ios-close-outline' style='margin-left:-22px; font-size:18px;'></a>" 
          + "</div>" 
          + "<div class='cell'>" + price + "</div>" 
          + "</div>"; 
    
          return item; 
          } 
    

    И вот я вставьте его в HTML:

    var addAccessorie = function(id, text, price){ 
          var m = id + "_accessorie"; 
          dojo.place(newAccesorieItem(m, text, price) 
          ,"maintenance_accessorie" 
          ,"after"); // before/after 
          } 
    

    Как я могу добавить событие CLICK к "<a>" в DOJO ?

    +0

    что делает newaccesorieItem делать? Я не вижу, где вы пытаетесь добавить либо onClick, либо событие с dojo.on – tik27

    ответ

    2

    Используйте dojo/dom-construct, чтобы создать элемент <a>, а затем используйте dojo/on, чтобы связать событие onclick.

    var aElement= domConstruct.toDom("<a id='" + id + "_icon' class='mIcon ion-ios-close-outline' 
          style='margin-left:-22px; font-size:18px;'></a>"); 
    
    on(aElement, 'click', function(){ 
        //Your click handler 
    }); 
    
    1

    Если вы держите свой код в точности так, как это, вы можете сделать:

    var addAccessorie = function(id, text, price){ 
         var m = id + "_accessorie"; 
         dojo.place(newAccesorieItem(m, text, price) 
         ,"maintenance_accessorie" 
         ,"after"); // before/after 
    
         on(dom.byId(m + '_icon'), 'click', function(){ 
          //what needs to be done when <a> is clicked 
         }); 
         } 
    

    Только нужно добавить является требуется для dojo/dom и dojo/on

    Смежные вопросы