在JS通过拼字符串生成的html结构上,绑定了ng-click事件,没有生效

通过在JS里拼字符串生成了 a 标签,我在上面绑定了一个ng-click="editData"事件,想跳转到其它页面,但是没有生效。这个要怎么解决呢,谢谢大家。

这是JS里拼出来的结构,
clipboard.png

这是我写的controller

clipboard.png

我的控件台没有报错。这个问题该怎么解决呢

阅读 3.7k
2 个回答

看看这个例子

 // 创建编译函数
var compileFn = $compile('<div>{{appCtrl.msg}}</div>');
// 传入scope,得到编译好的dom对象(已封装为jqlite对象)
// 也可以用$scope.$new()创建继承的作用域
var $dom = compileFn($scope); 
// 添加到文档中
$dom.appendTo('body');    

html()是静态的字符串,需要使用$compile服务编译,具体例子看楼上吧,编译完会返回一个jquery元素集,因为有些指令即时编辑后并不会返回所有的dom元素集合,而是一个comment节点,只有等到下一次digest的时候才会变成真实的元素集合。

我看你这里大量的代码都是使用dom驱动来做的,这样何必非要使用ng呢?应该考虑使用更angular-way的方式去做~

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题