【发布时间】:2013-08-29 01:47:19
【问题描述】:
对于特定用例,我必须以“旧方式”提交单个表单。意思是,我使用带有 action="" 的表单。响应是流式传输的,所以我没有重新加载页面。我完全清楚典型的 AngularJS 应用程序不会以这种方式提交表单,但到目前为止我别无选择。
也就是说,我尝试从 Angular 填充一些隐藏字段:
<input type="hidden" name="someData" ng-model="data" /> {{data}}
请注意,数据中显示的是正确的值。
表格看起来像标准表格:
<form id="aaa" name="aaa" action="/reports/aaa.html" method="post">
...
<input type="submit" value="Export" />
</form>
如果我点击提交,则不会向服务器发送任何值。如果我将输入字段更改为键入“文本”,它会按预期工作。我的假设是隐藏字段并没有真正填充,而文本字段实际上是由于双向绑定而显示的。
有什么想法可以提交由 AngularJS 填充的隐藏字段吗?
【问题讨论】:
-
嗯...输入文本怎么样,
display: none;?太丑了。 Angular 会忽略隐藏元素。 -
把它作为答案@tymeJV!
-
我使用以下语法来绑定一个值:
<input type="hidden" required ng-model="data.userid" ng-init="data.userid=pivot.id" />。这可能不是正确的做法,但对我有用。
标签: javascript forms angularjs