小编h4r*_*m4u的帖子

AngularJS - 直接在<form>元素上声明ng-model

在AngularJS中,有没有办法直接在<form>元素上声明ng-model,而不是必须在该表单的每个控件/输入上执行它,然后能够通过它们的名称访问控制器中控件的值?

具体来说,如果您有这样的表格,

<form>
  <input type="text" name="email">
  <input type="text" name="age">
</form>
Run Code Online (Sandbox Code Playgroud)

通常,你会做这样的事情,

<form>
  <input type="text" ng-model="user.email">
  <input type="text" ng-model="user.age">
<form>
Run Code Online (Sandbox Code Playgroud)

然后,您可以在控制器中访问用户对象及其属性:

$scope.user
$scope.user.email
$scope.user.age
Run Code Online (Sandbox Code Playgroud)

我想做这样的事情:

<form ng-model="user">
  <input type="text" name="email">
  <input type="text" name="age">
</form>
Run Code Online (Sandbox Code Playgroud)

然后能够访问控制器中的值:

$scope.user.email
$scope.user.age
Run Code Online (Sandbox Code Playgroud)

我问的原因是我正在对一个现有的网络项目进行投影,一些表格很容易有20或30个控件,并且单独定义ng模型似乎是一种矫枉过正.

我能找到的所有表单示例都在各个控件上声明了ng-model.我也能够挖出这张,基本上说这样的东西需要进行一次重大的AngularJS大修,所以我怀疑这可能是不可能的.但机票是从一年前开始的,也许事情从那时起就发生了变化.

forms angularjs angular-ngmodel

4
推荐指数
1
解决办法
3850
查看次数

标签 统计

angular-ngmodel ×1

angularjs ×1

forms ×1