我想禁用Fieldset中的所有元素,但启用其中的几个按钮。Demo:
<fieldset ng-disabled="true">
<legend>Personalia:</legend>
Name: <input type="text"><br>
Email: <input type="text"><br>
Date of birth: <input type="text">
<input type="button" value="See More (Enable this!!) " ng-click="ButtonClicked1()" ng-disabled="false"/>
Somethingelse: <input type="text">
<input type="button" value="View Details " ng-click="ButtonClicked2()"/>
</fieldset>
3条答案
按热度按时间mxg2im7a1#
我有三个解决方案给你:
方案一:
<details>
和<summary>
在您的示例中,您可能应该使用
<details>
和<summary>
元素:解决方案二:将按钮放入
<legend>
如果您没有透露更详细的信息,但您想要,比方说,切换字段集的禁用,则可以在
<legend>
element中放置切换按钮解决方案三:使用“假”按钮
如果您的用例是完全不同的,您可以使用aria-Roles来“伪造”一个按钮
role="button"
(请参见ARIA button role)。请记住添加必要的辅助功能,以使没有显示屏或鼠标的用户可以单击此按钮。重要的属性是role="button"
(用于屏幕阅读器)和tabindex="0"
(用于键盘导航),还请记住为keypress
添加一个用于Enter和Space的处理程序,以防您的用户没有鼠标。ubbxdtey2#
解决方案1-在点击事件中使用图标
使用图标而不是按钮,并将
click
事件附加到图标。这绕过了禁用的现场设置,起到了魔咒般的作用。和Java脚本(使用angularjs)
解决方案2-将Bootstrap样式的SPAN与Click事件一起使用
Bootstrap可以设置跨度样式,使其看起来完全像按钮。跨度不使用或继承
disabled
属性。和Java脚本(使用angularjs)
q35jwt9p3#
试试这个:
DEMO
Html:
脚本: