AngularJS不会发送隐藏域的值。
AngularJS不会发送隐藏域的值。
对于一个特定的使用情况,我必须以“旧方式”提交单个表单。也就是说,我使用一个action=\"\" 属性的表单。响应是流式传输的,因此我不会重新加载页面。我完全意识到,一个典型的AngularJS应用程序不会以这种方式提交表单,但到目前为止我别无选择。
也就是说,我尝试从Angular中填充一些隐藏字段:
{{data}}
请注意,数据中显示了正确的值。
表单看起来像一个标准表单:
如果我点击提交,服务器不会收到任何值。如果我将输入字段更改为\"type\"为\"text\",那么它就像预期的那样工作。我的假设是,隐藏字段实际上并没有被填充,而文本字段实际上是由于双向绑定而显示的。
有什么想法可以让我提交由AngularJS填充的隐藏字段吗?
admin 更改状态以发布 2023年5月20日
您不能使用隐藏字段进行双向绑定。
解决方法是使用方括号:
{{data}}
编辑:请参见github上的此线程:https://github.com/angular/angular.js/pull/2574
编辑:
自Angular 1.2以来,您可以使用'ng-value'指令将表达式绑定到输入的值属性。此指令应与输入单选按钮或复选框一起使用,但在隐藏输入中运行良好。
以下是使用ng-value的解决方案:
以下是使用ng-value和隐藏输入的小提琴: