jQuery: If this HREF contains

前端 未结 6 1780
南笙
南笙 2021-01-30 20:51

Why can\'t I get this to work??

$(\"a\").each(function() {
    if ($(this[href$=\"?\"]).length()) {
        alert(\"Contains questionmark\");
    }
});
         


        
6条回答
  •  抹茶落季
    2021-01-30 21:17

    Along with the points made by others, the $= selector is the "ends with" selector. You will want the *= (contains) selector, like so:

    $('a').each(function() {
        if ($(this).is('[href*="?"')) {
            alert("Contains questionmark");
        }
    });
    

    Here's a live demo ->

    As noted by Matt Ball, unless you will need to also manipulate links without a question mark (which may be the case, since you say your example is simplified), it would be less code and much faster to simply select only the links you want to begin with:

    $('a[href*="?"]').each(function() {
        alert("Contains questionmark");
    });
    

提交回复
热议问题