AngularJS 计算"action"属性中的表达式



今天下午,我经历了一个非常奇怪的AngularJS行为。

如果包含"//"的表达式位于表单的"action"属性中,则角度会给出插值误差。

请参阅下面的代码。如果运行代码,则 URL 可以在除"action"属性之外的所有位置正确显示。

<form
id="moodleform" target="my_iframe"
method="post" action="{{'http://www.someurl.com'}}" 
style="{{'http://www.someurl.com'}}"
some-attr="{{'http://www.someurl.com'}}">
{{'http://www.someurl.com'}}
<input name="somefield" value="someValue"/>
<input type="submit" value="Submit">

这是演示此问题的 Plunker,如果您检查表单元素,您可以看到 action 属性为空,并且控制台中出现错误,显示 $interpolate:interr

https://plnkr.co/edit/R2ypg6WWmro1WdrNy6mX?p=preview

任何想法,谢谢大家。

您需要使用ng-action而不仅仅是action属性

我找到了解决方案。 这是原始的堆栈溢出帖子:基于范围内变量的角度集形成动作

基本上,我需要在我的控制器中使用$sce服务才能在"操作"属性中有一个 URL。

最新更新