diff --git a/src/generators/dom/visitors/attributes/addElementBinding.js b/src/generators/dom/visitors/attributes/addElementBinding.js index 98488351d6..769eeb91ff 100644 --- a/src/generators/dom/visitors/attributes/addElementBinding.js +++ b/src/generators/dom/visitors/attributes/addElementBinding.js @@ -59,9 +59,7 @@ export default function createBinding ( generator, node, attribute, current, loc setter = deindent` if ( !${local.name}.checked ) return; ${setter} - component._bindingGroups[${bindingGroup}].forEach( function ( input ) { - input.checked = false; - });`; + `; } const condition = type === 'checkbox' ? @@ -158,4 +156,4 @@ function getBindingGroup ( generator, current, attribute, keypath ) { } return index; -} \ No newline at end of file +} diff --git a/test/generator/samples/binding-input-radio-group/_config.js b/test/generator/samples/binding-input-radio-group/_config.js index e42ef168f6..b557496533 100644 --- a/test/generator/samples/binding-input-radio-group/_config.js +++ b/test/generator/samples/binding-input-radio-group/_config.js @@ -16,15 +16,15 @@ export default { - + - + - +
Beta
`, test ( assert, component, target, window ) { @@ -42,18 +42,22 @@ export default { - + - + - +Alpha
` ); + assert.equal( inputs[0].checked, true ); + assert.equal( inputs[1].checked, false ); + assert.equal( inputs[2].checked, false ); + component.set({ selected: values[2] }); assert.equal( inputs[0].checked, false ); assert.equal( inputs[1].checked, false ); @@ -63,15 +67,15 @@ export default { - + - + - +Gamma
` ); }