我正试图根据复选框在Blazor中启用/禁用一组时间输入;对于按钮类型的输入,以下解决方案有效,而对于时间类型的输入则无效:
适用于按钮输入的解决方案:
<;button type=“button”class=“@this.SetButton”></按钮>;
[参数]公共布尔状态{get;set;}
公共字符串SetButton(){
字符串结果=状态?”:“已禁用”;
返回结果;
}
尝试输入不起作用的时间:
<;输入绑定=“@IsDisabled”type=“checkbox”/>;
<;input class=“@this.GetGroupState()”type=“time”/>;
已禁用受保护布尔{get;set;}
公共字符串GetGroupState(){
返回此。IsDisabled?“disabled”:;
}
注意:在第一个场景中,bool是另一个组件的参数,因此我不绑定它。但是,在第二种情况下,它绑定到复选框
要禁用元素,应使用disabled属性
我对你的代码做了一些修改,这将满足你的要求。Blazor将根据IsDisabled值自动添加或删除disabled属性
您还应该在按钮上使用disabled属性。这是一个更好的练习
<;按钮类型=";按钮“;已禁用=”@IsDisabled“&燃气轮机</按钮>;
<;输入绑定=&[email protected]“;类型=";复选框“/&燃气轮机;
<;输入已禁用=“输入已禁用”@IsDisabled“;类型=";时间“/&燃气轮机;
@代码{
已禁用受保护布尔{get;set;}
}
您仍然可以将其与应用CSS类来设置禁用元素的样式相结合。这取决于你