<tr ng-repeat="school in schools">
<td>{{$index+1}}</td>
<td>
<span school-edit>{{school.name}}</span>
</td>
</tr>
我的指示
app.directive("school-edit",function()
{
return {
restrict : "A",
link : function(scope,el,atr)
{
el.on("click",function()
{
alert("called");
});
}
};
});
点击事件未触发 我想指令是在ng-repeat填充表之前注册的
答案 0 :(得分:4)
OP,看来您的命名约定不正确。避免在定义指令时使用破折号。选择camel cased .. myDirective在js然后在html调用作为my-directive。
定义一个指令,这可以通过使用我定义的示例来工作。
app.directive('school', [function() {
return {
restrict: 'A',
link: function(scope, elem, attrs) {
elem.bind('click', function() {
alert("g");
});
}
}
}]);
这将为你做到。
<div school>click me!</div>
答案 1 :(得分:1)
如果有人仍在寻找答案,以下是正确的方法(注意命名惯例的不同):
app.directive("schoolEdit",function()
{
return {
restrict: "A",
link : function(scope,el,atr)
{
el.on("click",function()
{
alert("called");
});
}
};
});
答案 2 :(得分:0)
您正在寻找的是onclick。
app.directive("school-edit",function()
{
return {
restrict:"A",
link:function(scope,el,atr)
{
el.onclick = function(){
alert("called");
};
}
};
});