当我有一个Angular表达式作为输入类型的值时,它将不起作用:
<input ng-model="model" type="{{'number'}}">
数值被转换为字符串,复选框将不起作用。
您不能动态地更改输入的类型,因为IE不允许这一点,AngularJS需要跨浏览器兼容。所以即使你可能看到源代码中显示的更改类型AngularJS将不会被接受 – 类型只被评估一次,不能被更改。
请注意,同样的限制适用于jQuery:jQuery change input type
您只有动态类型的选项是自定义指令(您可以在其中下载动态模板或即时实现DOM)或使用ng-include来包括输入类型为静态值的include partial。