2013-08-22 2 views
1

У меня есть переменная $ rootScope:

$rootScope.register_data = {}; 

У меня есть вид, который содержит форму:

<form name="register_data"> 
    <div class="popup signup"> 
     <div class="social"> 
      <a ng-controller="FacebookCtrl" ng-click="login()" href="javascript:void(0)" class="facebook fb-login-button">Sign up with Facebook</a> 
      <div class="clear"></div> 
     </div> 
     <div class="userinfo"> 
      <div class="left"><input type="text" ng-model="register_data.firstname" placeholder="First Name" tabindex="1" required></div> 
      <div class="right"><input type="text" ng-model="register_data.email" placeholder="Email Address" tabindex="4" required></div> 

      <div class="left"><input type="text" ng-model="register_data.lastname" placeholder="Last Name" tabindex="2" required></div> 
      <div class="right optional"><div class="tip">optional</div><input type="text" ng-model="register_data.dob" tabindex="5" placeholder="DoB (dd/mm/yyyy)"></div> 

      <div class="left"><input type="text" ng-model="register_data.phone" placeholder="Phone Number" tabindex="3" required></div> 
      <div class="right password"><a href="javascript:void(0)" class="picker">&nbsp;</a><input type="password" ng-model="register_data.password" placeholder="Password" tabindex="6" required></div> 
      <div class="clear"></div> 
     </div> 
     <div class="control"> 
      <span class="terms">I agree to the <a href="javascript:void(0)">terms &amp; conditions</a></span> 
      <a href="javascript:void(0)" id="terms_checkbox" class="checkbox" ng-class="{checked : terms_checked}" ng-click="changeTerms()">&nbsp;</a> 
      <a href="javascript:void(0)" class="button" id="register_btn" ng-click="doRegister(register_data)">Sign up</a> 
     </div> 
    </div> 
</form> 

форма имеет имя register_data и каждое поле связанный с этим через ng-модель. Кажется, она перезаписывает мою переменную $rootScope.register_data, как если бы я обновлял, что ни один из элементов управления формы не обновляется. Хотя, если я удалю имя формы, это сработает. Однако мне нужно имя формы для правильной проверки формы.

Кто-нибудь знает, как я могу привязать элементы формы к объекту области видимости, но также сохранить форму проверки?

ответ

4

Измените имя формы, чтобы быть чем-то другим, кроме имени, используемого в качестве модели, поскольку контроллер формы будет опубликован в соответствующей области под этим именем.

+0

не думаю об этом! Спасибо – iamjonesy

+0

Не могли бы вы подробнее рассказать о n00b для #AngularJS? Я сейчас сталкиваюсь с этой проблемой и хочу знать, что лучше всего подходит для этого. Я просто ссылался на них с похожими именами, но думаю, что это будет оставаться путаницей, пока я не смогу ее полностью понять. – kalisjoshua

Смежные вопросы