title: Multiple validation groups, only validate one on control blur
body: <p><strong>Summary</strong></p>
  
  <p>I have a single control with two (almost) identical validators, each linked to two validation groups.  When the cursor leaves the control, both validators are automatically checked by ASP.NET.  Is there a way to only fire one (without setting <code>EnableClientScript="false"</code>) so there are not two <code>*</code> symbols being displayed on the <code>blur</code>?</p>
  
  <p><strong>Details</strong></p>
  
  <p>I have a form with two buttons <code>asp:btnSave</code> and <code>asp:btnSubmit</code>... both buttons require validation, as certain controls must be validated on the save for it to work correctly.</p>
  
  <p>So I have two validation groups, the "default" group for submitting (i.e. <code>ValidationGroup</code> property is NOT set), and the "SaveGroup" for saving.  There are two <code>asp:ValidationSummary</code> controls to reflect these.</p>
  
  <p>On a single control that is (for example) designed to accept a decimal value, I have the following.  Firstly a required field for the submit, then a range validator for the submit.  Then a 3rd validator which is a replication of the range validator but is part of the "SaveGroup"...</p>
  
  <pre><code>&lt;asp:TextBox runat="server" id="txtMyDecVal" /&gt;
  &lt;asp:RequiredFieldValidator runat="server" ControlToValidate="txtMyDecVal" 
     Text="*" ErrorMessage="Enter a value" /&gt;
  &lt;asp:RangeValidator runat="server" ControlToValidate="txtMyDecVal" Type="Double"
     MinimumValue="0" MaximumValue="999.99" Text="*"
     ErrorMessage="Value must be between 0 and 999.99" /&gt;
  &lt;asp:RangeValidator runat="server" ControlToValidate="txtMyDecVal" Type="Double"
     MinimumValue="0" MaximumValue="999.99" Text="*"
     ErrorMessage="Value must be between 0 and 999.99"
     ValidationGroup="SaveGroup" /&gt;
  </code></pre>
  
  <p>This is working fine, and the two buttons validate correctly.</p>
  
  <p><strong>The problem is...</strong> there is a visual issue that if you type invalid text into the control, BOTH the <code>RangeValidators</code> are fired automatically by ASP.NET when the cursor leaves the control, resulting in two <code>*</code> symbols appearing.</p>
  
  <p>Is there a way to make it so that only one of those validators are checked as part of the <code>blur</code> event on the control?</p>
  
  <p>I could set <code>EnableClientScript="false"</code> on one of the validators, but I still want it to check the control on the client side without a post-back first.</p>
  
  <p><strong>Update</strong></p>
  
  <p>I have been playing with setting <code>EnableClientScript="false"</code> as I decided that the post-back on the save wasn't actually going to be a big issue.</p>
  
  <p>However, this then leads on to another visual issue:  Enter invalid text, the "submit" validator shows the <code>*</code>.  Click the save, which posts-back and then displays the <code>*</code> for the "save" validator.  If you then change the text to valid text, the "save" validator doesn't disappear, so it still looks like there's a problem... and if you change the text to different invalid text, you get the "submit" <code>*</code> appearing as well, resulting in the same as before... i.e. two <code>*</code> symbols.</p>