如何检查元素是否具有正确的URL而不仅仅是#

时间:2017-03-02 08:06:26

标签: jquery

如何检查元素是否具有正确的URl,如http或https,而不仅仅是#

例如

1. <a href="http://example.com">Has a URL</a>
2. <a href="https://example.com">Has a URL</a>
3. <a href="#">Has no proper URL</a>
4. <a href="http://example.com/#my-div">Has a URL and also a hash</a>

我尝试使用包含选择器,它不像

那样工作
jQuery(document).ready(function($) {
    if($('.nav-res-navigation li a').is('[href*="#"]')){
        $('.nav-res-navigation li a').css('background', 'red');
    };
    });

我只想检查 href 是否包含#(无网址

2 个答案:

答案 0 :(得分:3)

您可以使用属性选择器直接匹配它们:

  list[{firstName:"abc", lastname:"pqr"}{firstName:"abc", lastname:"pqr"}]
$('.nav-res-navigation li a[href="#"]').addClass('foo');
.foo { color: red; }

  

我如何在if / else语句中使用如果$('。nav-res-navigation li a [href =“#”]')为true,addClass为另一个元素

为此,请检查选择器的<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <ul class="nav-res-navigation"> <li> <a href="http://example.com">Has a URL</a> <a href="https://example.com">Has a URL</a> <a href="#">Has no proper URL</a> <a href="http://example.com/#my-div">Has a URL and also a hash</a> <a href="#">Has no proper URL</a> </li> </ul>属性:

length

答案 1 :(得分:0)

您可以检索属性href的值,然后检查字符串是否匹配:

var url = $('.nav-res-navigation li a').attr('href');

if (url === '#') { ...