Find all elements on a page whose element ID contains a certain text using jQuery

前端 未结 4 788
既然无缘
既然无缘 2020-11-30 18:36

I\'m trying to find all elements on a page whose element ID contains a certain text. I\'ll then need to filter the found elements based on whether they are hidden or not. An

相关标签:
4条回答
  • 2020-11-30 18:41
    $('*[id*=mytext]:visible').each(function() {
        $(this).doStuff();
    });
    

    Note the asterisk '*' at the beginning of the selector matches all elements.

    See the Attribute Contains Selectors, as well as the :visible and :hidden selectors.

    0 讨论(0)
  • 2020-11-30 18:44

    Thanks to both of you. This worked perfectly for me.

    $("input[type='text'][id*=" + strID + "]:visible").each(function() {
        this.value=strVal;
    });
    
    0 讨论(0)
  • 2020-11-30 18:59

    This selects all DIVs with an ID containing 'foo' and that are visible

    $("div:visible[id*='foo']");
    
    0 讨论(0)
  • 2020-11-30 19:01

    If you're finding by Contains then it'll be like this

        $("input[id*='DiscountType']").each(function (i, el) {
             //It'll be an array of elements
         });
    

    If you're finding by Starts With then it'll be like this

        $("input[id^='DiscountType']").each(function (i, el) {
             //It'll be an array of elements
         });
    

    If you're finding by Ends With then it'll be like this

         $("input[id$='DiscountType']").each(function (i, el) {
             //It'll be an array of elements
         });
    

    If you want to select elements which id is not a given string

        $("input[id!='DiscountType']").each(function (i, el) {
             //It'll be an array of elements
         });
    

    If you want to select elements which name contains a given word, delimited by spaces

         $("input[name~='DiscountType']").each(function (i, el) {
             //It'll be an array of elements
         });
    

    If you want to select elements which id is equal to a given string or starting with that string followed by a hyphen

         $("input[id|='DiscountType']").each(function (i, el) {
             //It'll be an array of elements
         });
    
    0 讨论(0)
提交回复
热议问题