javascript - 动态创建单选按钮并选择适当的按钮 Angularjs

标签 javascript html angularjs

我有一个问卷表单,它循环遍历问题和问题中的答案,然后创建带有答案的单选按钮。 answer 对象将具有 answered 属性,该属性为 true 或 false,具体取决于先前是否已为该项目选择了该答案。如果 answer.answered = true,则应选中该单选按钮(只有一个会被回答)。问题是我无法根据 answer.answered 获取要检查的适当单选按钮。我试过 ng-value="answer.answered",在初始化时设置模型。缩写代码如下。

 <md-card data-ng-repeat="question in gradeCtrl.questions | limitTo: 1  track by $index" class="questions main-questions" 
data-ng-if="!gradeCtrl.subQuestions && gradeCtrl.needsRepairs === false">
<ul data-ng-repeat="answer in question.answers track by $index" class="questionnaire" layout-wrap layout="column" layout-align="center center">
<li>
<input type="radio" name="{{question.id}}" data-ng-attr-id="answer.id" data-ng-value="gradeCtrl.isAnswered(answer);"
 data-ng-init="gradeCtrl.radioButton[answer.id]=gradeCtrl.isAnswered(answer);"
 data-ng-model="gradeCtrl.radioButton[answer.id]">
</li>
</md-card>

最佳答案

我能够通过设置 model = answer.answered 以及使用 ng-checked 来解决它。

<input type="radio" name="{{question.id}}"  data-ng-checked="gradeCtrl.isAnswered(answer);"
                       data-ng-attr-id="answer.id"
                       data-ng-init="gradeCtrl.radioButton[answer.id] = gradeCtrl.isAnswered(answer);"
                       data-ng-click="gradeCtrl.saveAnswer(answer, question.question)"
                       data-ng-model="answer.answered">

关于javascript - 动态创建单选按钮并选择适当的按钮 Angularjs,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35047256/

相关文章:

javascript - Firebase/Parse 可以在每天的特定时间运行代码吗?

jquery - Bootstrap 堆叠导航一次只打开一个问题

angularjs - 我可以使用 ngModelController 的 $formatter 来完全控制输入字段的呈现方式吗?

javascript - AngularJS limitTo 与模型中的值 (JSON)

javascript - 将参数传递给 jquery $.grep

javascript - 如何将日期转换为时间戳

javascript - 为什么我的 ng-消息没有出现?

php - HTML 5 表单浏览器与 Internet Explorer 的兼容性问题

html - 图像下方有很多空白

angularjs - 如何使用 Protractor 来检查元素是否可见?