18910140161

blazor h5 HTML-在Blazor中用C#隐藏某个类的所有divs-Stack Overflow

顺晟科技

2022-10-19 11:43:26

169

我有如下所示:

可以使用哪些C#代码,如果代码被修改,可以修改为隐藏wing?

当前我将类设置为变量。然后将的值更改为具有CSS属性的类之一。我更希望能够创建一个泛型方法,它接受将要替换的字符串,这样我就可以用它来隐藏类。


顺晟科技:

你可以这样做,但不要。大概您不会仅仅为了helluvit而打开和关闭divs--您将根据状态的变化隐藏和显示组件或元素。

在Blazor中,您应该使用C#来测试所需的状态更改,避免不必要地使用JS和CSS。

Page.razor

我从来没有使用JavaScript在Blazor中隐藏和显示元素的情况。请注意,它现在只用于与CSS格式化,而不是用来让jQuery查找div并切换其可见性的hack。

一些替代的Blazor方法-这取决于所有Foo div的位置。

  1. 方法1使用带有show hide的组件来显示或隐藏组件中的内容。
  2. 方法2使用相同的方法,但添加/隐藏一些CSS。

演示页显示了两个正在使用的方法。

divcomponent
Page.razor
CSSComponent
Page.razor
演示页
Page.razor

您可以做的是传递一个参数,告诉隐藏什么类。然后,对于类中的每个元素(我认为可以很多,因为您使用了not),您可以添加另一个名为。然后在CSS中,只需为类设置。

这样,类中的任何元素都将永远隐藏,直到您删除它为止。

所以您可以这样做:

然后在HideClass方法中,您有相同的逻辑,但是您将该类添加到具有该类的所有元素中。

知道您实际上可以在普通JS中实现这一点,这要好得多,因为通常使用blazor时,您必须通过C#调用JS方法,这只是额外的处理。

我不明白为什么需要CSS来隐藏类。 您可以使用Blazor来完成这项工作。

无论如何,如果您喜欢这种方法,可以调用如下方法:

Page.razor

如果需要接收原始的args,请使用以下表单:

Page.razor

和方法将是:

Page.razor

现在需要一个在标记中引用的javascript,该javascript包含以下内容:

Page.razor
  • TAG:
相关文章
我们已经准备好了,你呢?
2024我们与您携手共赢,为您的企业形象保驾护航