【问题标题】:Attributes.Add("class", "className") but preserve existing classAttributes.Add("class", "className") 但保留现有类
【发布时间】:2011-12-19 14:05:54
【问题描述】:

简单的事情,嗯,我认为是。

我需要在特定条件下使用 VB 向 asp:repeater 中的元素添加一个类。

所以,我可以做到

ITEMID.Attributes.Add("class", "classToAdd")

但这会删除现有的类,因此搞砸了我的 CSS。

ITEMID.Attributes("class") = "classToAdd"

似乎做同样的事情。

我如何添加一个类到一个元素,同时保留它现有的类值?

【问题讨论】:

    标签: css vb.net class


    【解决方案1】:

    使用+=添加额外的类,并确保你在前面留一个空格,否则它会显示为currentClassclassToAdd,其中当前类是currentClass

    ITEMID.Attributes("class") += " classToAdd"
    

    这和做的一样:

    ITEMID.Attributes("class") = ITEMID.Attributes("class") + " classToAdd"
    

    因此:

    ITEMID.Attributes("class") = "currentClass" + " classToAdd"
    

    【讨论】:

    • 对于我们这些使用 C# 的人来说,这是正确的语法:ITEMID.Attributes["class"] += " classToAdd"
    【解决方案2】:

    你需要把它们堆叠起来:

    Dim existingClasses as string = ITEMID.Attributes("class")
    
    ITEMID.Attributes.Add("class", existingClasses & " classToAdd")
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-28
      • 1970-01-01
      • 2021-05-10
      • 2011-07-29
      • 1970-01-01
      相关资源
      最近更新 更多