title: Angular form submitting twice
body: <p>so I am making a user registration form with angular js using ng-submit and ng-model. The problem is when the user submits the form its triggers twice.</p>
  
  <p>I looked around for common causes and none of them fit the bill. I haven't declared my controller twice and my submit button doesn't have any ng-click events.</p>
  
  <p>Here is the form code (likely something wrong here that I am missing)</p>
  
  <pre><code>&lt;form class="form"  ng-submit="registerUser()"&gt;
      &lt;div class="form-group row"&gt;
         &lt;label for="user-fname"&gt;First Name&lt;/label&gt;
         &lt;div class="two-for-one"&gt;
            &lt;input type="text" id="user-fname" name="user-fname" class="form-control" placeholder="first name" ng-model="userData.fname"&gt;
        &lt;/div&gt;
        &lt;label for="user-lname"&gt;Last Name&lt;/label&gt;
        &lt;div class="two-for-one"&gt;
          &lt;input type="text" id="user-lname" name="user-lname" class="form-control" placeholder="last name" ng-model="userData.lname"&gt;
        &lt;/div&gt;
      &lt;/div&gt;
      &lt;label for="email"&gt;Email&lt;/label&gt;
      &lt;input class="form-control" type="text" id="email" name="email" placeholder="Email" rel="popover" data-content="What’s your email address?" ng-model="userData.email"&gt;
       &lt;label for="reg_password"&gt;Password&lt;/label&gt;
       &lt;input class="form-control" type="password" id="reg_password" name="reg_password" placeholder="Password" rel="popover" data-content="Please choose a password (minimum of 6 characters)" ng-model="userData.pw"&gt;
       &lt;label for="reg_password_confirm"&gt;Confirm Password&lt;/label&gt;
       &lt;input class="form-control" type="password" id="reg_password_confirm" name="reg_password_confirm" placeholder="Confirm Password" rel="popover" data-content="Please confirm your password" ng-model="userData.cpw"&gt;
       &lt;label for="mail"&gt;Want to be apart of our mailing list?&lt;/label&gt;
       &lt;input type="checkbox" id="mail" name="mail" value="1" ng-model="userData.mail"&gt;
       &lt;button class="btn btn-success"&gt;Next&lt;/button&gt;
   &lt;/form&gt;
  </code></pre>
  
  <p>And although I don't think its the js here it is:</p>
  
  <pre><code>       $scope.userData = {
              acc_type: "user",
              mail:false,
          };
          $scope.registerUser = function() {
              loginRegsterService.registerUser($scope.userData).then(function(response){
                  console.log(response);
              });
          };
  </code></pre>
  
  <p>And the last part is a service which uses http to post data. Its pretty standard</p>
  
  <pre><code>        this.registerUser = function(data) {
              var req = {
                  method: 'POST',
                  url: location.protocol + '//' + location.host + '/models/register.php',
                  headers: {
                      'Content-Type': 'application/json'
                  },
                  data: data
              }
              return $http(req).then(function(response) {
                  return response.data;
              });
          };
  </code></pre>
  
  <p>Thanks for reading and your help!</p>
  
  <p>Oh and I forgot to mention that all this is work fine except it submits twice :\</p>
  
  <p>And the html is valid except for the angular directives.</p>