不管<input type='radio checked='true''> 你的checked屬性值是true或者false,他都會選中。
其實原理是這樣的,復選框里只要有checked屬性,不管是否為其賦值,結果為空或true或false或任意值,均為選中狀態。
選中不選中,不是看checked的屬性值,而是看有沒有checked這個屬性,所以,動態選中,不用v-model,也不用checked='true',判斷是否需要渲染checked這個屬性就好了.
view 改一下:
"<input type='radio' :name='groupName' :checked='option.checked'>{{option.text}}"
:checked='option.checked' 如果option.checked為true,他就渲染checked這個屬性,否則input元素沒有這個屬性。
這樣綁定后,我們在vue的methods里面設置,把當前索引的radio綁定model的checked屬性設置為true,其他的必須設置為false,這樣才和上面的綁定對應,不然全是true了,綁定就會有問題了。
checkOption: function (e, optionIndex) {
$.each(vm.options, function (index, item) {
item.checked = false;
});
vm.options[optionIndex].checked = true;
}