微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

angularjs – 我可以访问控制器中的表单吗?

我目前使用以下。

$ scope。$$ childHead.customerForm [firstName],这样:

<form name="customerForm">
  <input type="text" name="firstName" 
         ng-model="data.customer.firstName" 
         tabindex="1"  
         ng-disabled="!data.editable" 
         validationcustomer />
</form>

但这只适用于Chrome。现在我尝试以下:

$ scope.editCustomerForm [firstName],这样:

<form name="customerForm" ng-model="editCustomerForm">
  <input type="text" name="firstName" 
         ng-model="data.customer.firstName" tabindex="1"  
         ng-disabled="!data.editable" 
         validationcustomer />
</form>

哪个不工作。注意我的形式是在一个基础选项卡内。如何访问firstName?

编辑:看起来似乎窗体不会添加到范围内,当它在一个基础选项卡。

任何人都有这个解决方案?

虽然在其他评论中提到我认为我会拼写出一些使用“控制器为”语法的人:
<div ng-controller="MyController as ctrl">

<form name="ctrl.myForm">
    ...inputs
    Dirty? {{ctrl.myForm.$dirty}}

    <button ng-click="ctrl.saveChanges()">Save</button>
</form>

</div>

然后你可以访问FormController在你的代码,如:

function MyController () {
    var vm = this;
    vm.saveChanges = saveChanges;

    function saveChanges() {

       if(vm.myForm.$valid) { 
            // Save to db or whatever.
            vm.myForm.$setPristine();
       }
}

原文地址:https://www.jb51.cc/angularjs/147139.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐