AngularJS不发送隐藏字段值

对于特定的用例,我必须以“旧方式”提交单个表单。意思是,我使用带有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填充的隐藏字段吗?


心有法竹
浏览 748回答 3
3回答

www说

您可以始终使用type=text和,display:none;因为Angular会忽略隐藏的元素。正如OP所说,通常您不会这样做,但这似乎是一种特殊情况。<input type="text" name="someData" ng-model="data" style="display: none;"/>
打开App,查看更多内容
随时随地看视频慕课网APP