Fiddle在这里。从以下给定结构中的html元素开始,Safari出于某种奇怪的原因无法启用所有输入元素。它仅启用第一个。可能是一些错误?
<fieldset disabled><div>
<div><fieldset disabled>
<input type="text" disabled>
</fieldset></div>
<div><fieldset disabled>
<input type="text" disabled>
</fieldset></div>
</div></fieldset>
此处的Javascript:
$('fieldset').prop('disabled',false);
$("input").prop('disabled',false);
要使Safari正确启用所有输入,您应该启用所有字段集由内而外,因此首先嵌套的是:
const fieldsets = document.getElementsByTagName('fieldset');
Array.from(fieldsets).reverse().forEach(fieldset => fieldset.disabled = false);
[Complete codepen,还有一些带有字段集的用例。
这已在Safari 13.0上进行了测试。这绝对是一个错误,我将向苹果报告。