0

я использовал Кендо шаблон следующим образом:Кендо Шаблон флажок не стреляя клик событие

<script type="text/javascript" src="@Url.Content("~/Scripts/Module/Analysis/CreateMaintainAnalysis.js")"></script> 
    <script type="text/x-kendo-template" id="Modeltemplate"> 
     <div class="section group fr"> 
      <div class="col span_2_of_12"> 
       #if(ACTIVE_MODELS_COUNT > 0){# <input class="ModelCheckBox" type="checkbox" checked/>#} else {# <input class="ModelCheckBox" type="checkbox" unchecked/> #}# 
      </div> 
      <div class="col span_4_of_12"><label>#:MODEL#</label></div> 
     </div> 
     </script> 

, и я хочу написать нажмите событие на CheckBox Нажмите следующим образом:

$("#ModelListView").kendoListView({ 
    template: kendo.template($("#Modeltemplate").html()) 
}); 

    $(".ModelCheckBox").click(function() { 
     if (this.checked) { alert("Checked"); } 
     }); 

ответ

2

Скорее всего, Обработчик клика подключен слишком рано, прежде чем ListView привяжет данные, поэтому пока еще не выставлены флажки. У вас есть два варианта -

  1. Execute код ниже в dataBound случае ListView.

    http://docs.telerik.com/kendo-ui/api/javascript/ui/listview#events-dataBound

    $(".ModelCheckBox").click(function() { 
        if (this.checked) { alert("Checked"); } 
    }); 
    
  2. Используйте делегат, который прикреплен к ListView <div>

    $("#ModelListView").on("click", ".ModelCheckBox", function() { 
        if (this.checked) { alert("Checked"); } 
    }); 
    
+1

Большое спасибо .. :) – SantyEssac

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