使用angularjs动态修改DOM

使用angularjs动态修改DOM,angularjs,Angularjs,我是angularjs的新手,我正在尝试向DOM添加一些动态内容。 我想做的有点像推特。 我有一个包含不同行的表,如果用户单击一行,就会在该行中加载一些详细信息。 我有一个用于行详细信息的模板(我想在单击的行后面显示(并编译)。 由于我不太明白如何使用click触发一个指令,我尝试从一个控制器函数(在行上使用ng click)执行该操作,但我无法编译(我只显示了模板) 如果有人知道怎么做(最好的方法是用指令来做,因为这似乎是正确的方法) 谢谢由于不清楚您要添加的模板有多复杂,您可能不需要指令-n

我是angularjs的新手,我正在尝试向DOM添加一些动态内容。 我想做的有点像推特。 我有一个包含不同行的表,如果用户单击一行,就会在该行中加载一些详细信息。 我有一个用于行详细信息的模板(我想在单击的行后面显示(并编译)。 由于我不太明白如何使用click触发一个指令,我尝试从一个控制器函数(在行上使用ng click)执行该操作,但我无法编译(我只显示了模板)

如果有人知道怎么做(最好的方法是用指令来做,因为这似乎是正确的方法)


谢谢

由于不清楚您要添加的模板有多复杂,您可能不需要指令-ng repeat在元素上可能就足够了。在AngularJS主页上,“连接后端”演示tab list.html显示了如何使用ng repeat将行动态添加到表中,其中包含通过查询()检索的数据方法。这足以满足您的需要吗?

尝试创建一个plunker。我要添加的模板没有编译好,但它有一个列表、一些关于消息和列表项的详细信息以及一个用于添加新注释的表单。下面是我希望它的工作方式(我没有放置模板,但想法是在单击的行中动态加载模板。我认为您应该使用嵌套的div而不是tr,这样您就可以有嵌套的ng repeat。outter ng repeat将用于消息,而inner ng repeat将用于与消息关联的注释。将所有数据放入same$scope对象。例如,$scope.messages=[{id:'1',文本:'t1',日期:'…',注释:[]},{…},…]。让您的ng click处理程序将注释添加到数组$scope中的相应条目中。messages和Angular应该会自动为您更新视图。