Javascript KO收音机工作,但未按检查结果初始化
下面是一个基于淘汰的答案编辑器的片段Javascript KO收音机工作,但未按检查结果初始化,javascript,knockout.js,Javascript,Knockout.js,下面是一个基于淘汰的答案编辑器的片段 <!-- ko foreach: Answers --> <div class="qa-box" data-bindx="event: { mousedown: mouseDown, dragend: dragEnd, dragstart: dragStart }"> <div class="qa-body"> <div class="radio"> <label>
<!-- ko foreach: Answers -->
<div class="qa-box" data-bindx="event: { mousedown: mouseDown, dragend: dragEnd, dragstart: dragStart }">
<div class="qa-body">
<div class="radio">
<label>
<input type="radio" data-bind="attr: { name: 'Q' + $parentContext.$index(), value: $index }, checked: $parent.CorrectAnswer" /><span></span>
Tick the correct answer
<span data-bind="text:$parent.CorrectAnswer"></span>
</label>
<a href="#" data-bind="click: $parent.remove.bind($parent)">
<i class="fa fa-times"></i>
Remove this answer
</a>
<div class="form-control" contenteditable="true" data-bind="ckeditor: $data, attr: { id: 'Q' + $parentContext.$index() + 'A' + $index() }"></div>
</div>
</div>
</div>
<!-- /ko -->
<div>CorrectAnswer: <span data-bind="text: CorrectAnswer"></span></div>
给定问题的所有答案都具有相同的名称Qx和项目列表位置提供的值。单击项目时,其列表位置将写入CorrectAnswer
。这种情况确实发生了,因为新值显示在指示灯div中
那么,在其他一切正常的情况下,什么会阻止UI初始化为选中状态呢?这不是初始化问题,而是类型兼容性问题。无线电输入的值为字符串类型。“我的视图模型”提供的值的类型为number。淘汰赛是一个强有力的比较,不承认比赛
另请参见这不是初始化问题,而是类型兼容性问题。无线电输入的值为字符串类型。“我的视图模型”提供的值的类型为number。淘汰赛是一个强有力的比较,不承认比赛 另见
attr: { name: 'Q'+$parentContext.$index(), value: $index }, checked: $parent.CorrectAnswer