Angularjs ng-model不绑定到隐藏输入

时间:2016-07-15 13:32:19

标签: javascript angularjs

我试图通过隐藏的输入传递表单信息,如下所示:

<input type="hidden" required ng-model="formHolder.template[position].itemKey[itr]" ng-value="[[ formItem ]]" />

formItem可以是任何字符串。包含空格的字符串会出错。

错误 angular.js:13708错误:[$ parse:syntax]语法错误:令牌&#39;行&#39;是从[Line]开始的表达式[Subject Line]的第9列的意外标记。

ng-value期待某种类型吗?

2 个答案:

答案 0 :(得分:2)

我认为这可能是您正在寻找的内容:AngularJS does not send hidden field value

具体来说,您可以将数据从angular绑定到普通的HTML值标记,如下所示:

<input type="hidden" name="someData" value="{{data}}" />

答案 1 :(得分:2)

首先,ng-model无法使用hidden inputs,因此您只需使用ngValue即可实现所需目标。

问题是您在ngValue指令上使用了错误的语法

这是示例

&#13;
&#13;
angular.module('app', [])
  .controller('mainCtrl', function($scope) {
    
  });
&#13;
<!DOCTYPE html>
<html ng-app="app">

<head>
  <script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.5.7/angular.min.js"></script>
</head>

<body ng-controller="mainCtrl">
  <input type="text" ng-model="value" placeholder="Type value to hidden input">
  <input type="hidden" ng-value="value">
  <hr>
  Value of input hidden (or check it in console):
  <pre ng-bind="value"></pre>
</body>

</html>
&#13;
&#13;
&#13;