Knockout radio buttons value
This example illustrates how you can use a view model to work with multiple radio buttons.
HTML
<script src="http://rniemeyer.github.com/KnockMeOut/Scripts/jquery.tmpl.js"></script>
<script src="https://raw.github.com/SteveSanderson/knockout.mapping/master/build/output/knockout.mapping-latest.debug.js"></script>
<script src="http://knockoutjs.com/js/knockout-2.2.0.js"></script>
<p> Current Radiobutton Value = <span data-bind='value: selected' ></span></p>
<input type='radio' name='onlyOne' data-bind='checked: selected, enable: enable' value='Y' /> Yes
<input type='radio' name='onlyOne' data-bind='checked: selected, enable: enable' value='N' /> No
<input type='radio' name='onlyOne' data-bind='checked: selected, enable: enable' value='M' /> Maybe
<BR/>
<input type='checkbox' data-bind='checked: enable'> Enable controls
JavaScript
var viewModel = {
enable: ko.observable(true),
selected: ko.observable('Y')
};
$('input[name="onlyOne"]').click(function (event) {
if ($(this).val() === viewModel.selected()) {
viewModel.selected($(this).val());
}
});
ko.applyBindings(viewModel);