【发布时间】:2014-09-08 07:31:43
【问题描述】:
我对 Angular 很陌生!我要做的是从关联的控制器内部获取表单名称或从控制器内部获取对表单对象的引用。
<form name="someName" ng-controller="formController">
<label>Name:
<input type="text"/>
</label>
<input type="submit"/>
</form>
控制器:
obApp.controller('formController',function($scope){
//this does NOT work - undefined - was expecting it to be "someName"
var q = $scope.formName;
//this exists - but can not use it since the
//name of the form can be whatever and i do not know beforehand what that name is
var name = $scope.someName.$name;
});
我的问题是我不知道如何获得实际表单的名称。引用它会更好。找了大约5个小时,我似乎无法弄清楚。
问题转化为:“如何从关联的控制器中获取对表单对象的引用?”。
【问题讨论】:
-
类似的东西。这个想法是我需要解决问题,就好像我不知道表单名称一样。
-
没有足够的信息来了解解决问题的正确方法。我几乎可以肯定这是一个 X/Y 问题。
-
信息量不够怎么办?这是一个普遍的问题。任何解决方案都可以!
-
因为我能想到的解决方法有 3 种,而且都很尴尬。这是一个非常具体的用例的通用问题,我想知道它是否有效。无论如何,Josep 给了你最不尴尬的答案。
-
很少有理由需要这样做;因此这似乎是一个 X/Y 问题。也就是说,您正在尝试解决问题 X,并且您认为解决方案 Y 会起作用,但是当您遇到麻烦时,您不会询问 X,而是询问 Y。提供更多关于您需要访问表单的原因的上下文名字而不是问你为什么不能这样做会更有帮助。
标签: angularjs angularjs-scope angularjs-controller