代码之家  ›  专栏  ›  技术社区  ›  Craig McKeachie

内联样式属性的jquery选择器

  •  2
  • Craig McKeachie  · 技术社区  · 15 年前

    我想使用jquery选择以下范围:

    <span id="RequiredFieldValidator1" class="validationerror" style="color: Red; display: none;">*</span>
    

    但不要选择以下与原始跨度不同的跨度,因为样式属性具有值为inline而不是none的显示属性。

    <span id="RequiredFieldValidator2" class="validationerror" style="color: Red; display: inline;">*</span>
    

    我知道内联样式是邪恶的,但是一个ASP.NET Web窗体验证程序控件正在生成它,并且做了很多好事和坏事。

    是否可以使用jquery选择器完成此操作?我刚接触jquery。

    5 回复  |  直到 15 年前
        1
  •  4
  •   bendewey    15 年前

    尝试如下操作:

    $('.validationerror:hidden')
    
        2
  •  5
  •   aleemb    15 年前
    $("span[style*=inline]")
    

    将选择所有具有“inline”值的样式属性的跨度元素。

        3
  •  1
  •   Justin Moore Son Dang    15 年前

    我这样做是为了向验证错误控件的父级添加/删除错误样式,以突出显示导致错误的控件和验证消息。

    $('input').change(function() {
      $(".validationError[style*=hidden]").parent().removeClass("error");
      $(".validationError[style*=visible]").parent().addClass("error");
    });
    
        4
  •  0
  •   DevMania    15 年前

    这里还有一个选择服务器端控件的建议

    document.getElementById("<%=txtFirstName.ClientID %>"); 
    

    $("#'<%=txtFirstName.ClientID %>'"); 
    

    $("[id$='_txtFirstName']"); 
    
        5
  •  -1
  •   Rony    15 年前

    在类中嵌入样式,您有两个类:use jquery选择器

    $(".<ClassName>")