加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

AngularJs不能访问控制器中的表单对象($scope)

发布时间:2020-12-17 09:04:38 所属栏目:安全 来源:网络整理
导读:我使用bootstrap-ui更具体的模态窗口。我有一个形式在模态,我想要的是实例化表单验证对象。所以基本上我这样做: form name="form" div class="form-group" label for="answer_rows"Answer rows:/label textarea name="answer_rows" ng-model="question.ans
我使用bootstrap-ui更具体的模态窗口。我有一个形式在模态,我想要的是实例化表单验证对象。所以基本上我这样做:
<form name="form">
    <div class="form-group">
        <label for="answer_rows">Answer rows:</label>
        <textarea name="answer_rows" ng-model="question.answer_rows"></textarea>
    </div>
</form>

<pre>
    {{form | json}}
</pre

我可以看到表单对象在html文件,没有问题,但是如果我想从控制器访问表单验证对象。它只输出我的空对象。这里是控制器示例:

.controller('EditQuestionCtrl',function ($scope,$modalInstance) {
    $scope.question = {};
    $scope.form = {};

    $scope.update = function () {
        console.log($scope.form); //empty object
        console.log($scope.question); // can see form input
    };
});

可能是什么原因,我不能访问$ scope.form从控制器?

只是对于那些没有使用$ scope,而是这样,在他们的控制器,你将不得不添加控制器别名之前的窗体的名称。例如:
<div ng-controller="ClientsController as clients">
  <form name="clients.something">
  </form>
</div>

然后在控制器上:

app.controller('ClientsController',function() {
  // setting $setPristine()
  this.something.$setPristine();
};

希望它也有助于整套答案。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读