【问题标题】:angularJS dynamic generated li tag with ng repeat creating multiple ul tagangularJS动态生成li标签,ng重复创建多个ul标签
【发布时间】:2016-06-02 15:13:39
【问题描述】:

以下代码包含一个输入框、一个单选按钮和一个按钮。

当按钮被点击时,它会生成一个额外的输入框和单选按钮。所有单选按钮都使用相同的名称。

  <ul id = "listOfAnswers" ng-repeat="i in addQuestion.loop(addQuestion.numOfChoice) track by $index">
    <li>
        answers:<input type="text"/>
        correct:<input type="radio" name="correctChoice" value ={{$index}}/>
    </li>
  </ul>
  <button ng-Click="addQuestion.numOfChoice = addQuestion.numOfChoice + 1">add more choices</button><br/><br/>

当我在浏览器中打开它时,当我检查它时它正常显示,它正在显示

<ul ..>
  <li> [...] </li>
</ul>

<ul .. >
  <li> [...] </li>
</ul>

所以每次重复它都会生成另一个 ul 标签。问题是我试图通过使用getElementById("ul-tag-id").children 在最后获取所有 li 项目并对其进行 ajax。我可以为每个 li 项目分配一个类名,但我更喜欢以前的方法,更整洁。

我在这里做错了吗?另外我刚刚了解到有自定义指令,我无法决定什么时候应该将这些东西放入控制器中,什么时候应该将它们放入指令中。我在网上找到的很多教程都已经过时了,我不知道该遵循哪个,有什么建议吗?

【问题讨论】:

  • 在需要可重用组件时使用指令。

标签: angularjs


【解决方案1】:

ng-repeat 应该用在要重复的元素上。看来您需要将其移至 li 元素。

一些学习资源:

【讨论】:

  • 这太尴尬了,谢谢。你能回答我的第二个问题吗?还是需要很长的回答?
猜你喜欢
  • 2014-07-25
  • 2012-03-13
  • 2014-09-17
  • 1970-01-01
  • 2015-03-22
  • 1970-01-01
  • 1970-01-01
  • 2019-01-24
  • 1970-01-01
相关资源
最近更新 更多