title: Knockout Validation - Custom Validator not showing message
body: <p>I have in my viewmodel for boolean properties, each tied to a checkbox.  I am attempting to write a custom knockout validator that ensures at least one checkbox is checked.  I've got the validator written and hooked up (i.e. it fires when a checkbox changes, and only returns false when no checkboxes are checked), but the validation message doesn't show up.</p>
  
  <p>First off, here is a fiddle: <a href="http://jsfiddle.net/internetH3ro/aRS4a/10/" rel="nofollow">http://jsfiddle.net/internetH3ro/aRS4a/10/</a></p>
  
  <p>Here is the validator:</p>
  
  <pre><code>ko.validation.rules['requiresOneOf'] = {
      getValue: function (o) {
          return (typeof o === 'function' ? o() : o);
      },
      validator: function (val, fields) {
          var self = this;
          var result = true;
          ko.utils.arrayForEach(fields, function (field) {
              var val = self.getValue(field);
              if (val) {
                  result = false;
              }
          });
  
          return result;
      },
      message: 'Must select one option'
  };
  ko.validation.registerExtenders();
  </code></pre>
  
  <p>Here is the view model (names changed to protect the innocent):</p>
  
  <pre><code>function ViewModel() {
      var self = this;
      self.checkboxOne = ko.observable(true);
      self.checkboxTwo = ko.observable(true);
      self.checkboxThree = ko.observable(true);
      self.checkboxFour = ko.observable(true);
      self.customValidation = ko.observable().extend({
          requiresOneOf: [self.checkboxOne, self.checkboxTwo, self.checkboxThree, self.checkboxFour]
      });
  }
  </code></pre>
  
  <p>And the associated HTML:</p>
  
  <pre><code>&lt;label&gt;
      &lt;input type="checkbox" data-bind="checked: checkboxOne" /&gt;Checkbox One
  &lt;/label&gt;&lt;br /&gt;
  &lt;label&gt;
      &lt;input type="checkbox" data-bind="checked: checkboxTwo" /&gt;Checkbox Two
  &lt;/label&gt;&lt;br /&gt;
  &lt;label&gt;
      &lt;input type="checkbox" data-bind="checked: checkboxThree" /&gt;Checkbox Three
  &lt;/label&gt;&lt;br /&gt;
  &lt;label&gt;
      &lt;input type="checkbox" data-bind="checked: checkboxFour" /&gt;Checkbox Four
  &lt;/label&gt;
  &lt;span data-bind="validationMessage: customValidation"&gt;&lt;/span&gt;
  </code></pre>
  
  <p>I've stepped through the validator and have confirmed that when no checkboxes are checked, it returns false, however the span that should show my validation message displays nothing.  I'm assuming I'm missing a step or something simple, but I can't find it.  Think I've been staring at the code too long.  Any help would be greatly appreciated, thanks.</p>
  
  <p>UPDATE: I've noticed, though, that if I add the custom validator to a validation group, that picks up the fact that it's not valid.  I've updated the fiddle to illustrate this.  So my validator is working, I just can't get the darn message to display.</p>
  
  <p><a href="http://jsfiddle.net/internetH3ro/aRS4a/" rel="nofollow">http://jsfiddle.net/internetH3ro/aRS4a/</a></p>