【发布时间】:2016-11-01 14:05:28
【问题描述】:
我有一个包含许多输入元素的大型表单,这些输入元素在用户单击按钮之前是不可编辑的,但需要允许文本选择以将值复制到其他表单。
我现有的解决方案是将输入包装在禁用的字段集中,直到最新的 Chrome 版本才允许在禁用的输入上选择文本。
此处的其他问题已建议使用 readonly 属性,但字段集不支持它,因此它不会级联到子元素(参见代码 sn-p)。
有什么建议吗,或者我会被卡住为每个输入元素添加只读吗?我也在使用 AngularJS,所以如果有一个角度解决方案也可以。
编辑:我应该注意我考虑过使用 ngReadonly(目前在字段集上使用 ngDisabled),但 ngReadonly 不适用于字段集,并且必须添加到我的应用程序中的数百个输入中。
<html>
<body>
<fieldset disabled>
<input value="I am disabled by my parent" />
</fieldset>
<fieldset readonly>
<input value="I am readonly" readonly/>
<input value="I am not readonly, despite my parent" />
</fieldset>
</body>
</html>
【问题讨论】:
-
如果你创建了一个覆盖元素所有子元素的策略并添加了只读属性