如果html链接标记为空,请使用javascript

时间:2018-08-09 16:37:02

标签: javascript html

如果href值为#,我想隐藏html链接标签,否则应保持显示状态。 href值是通过PHP循环从数据库中检索的。

<li>
    <a class="linkedes" href="http//:Someurl ....">LINK</a>
    <a class="linkedes" href="#">FACEBOOK</a>
    <a class="linkedes" href="#">TWITTER</a>
    <a class="linkedes" href="#">INSTAGRAM</a>
    <a class="linkedes" href="http//:Someurl ....">PLAYSTORE</a>
    <a class="linkedes" href="#">GITHUB</a>
    <a class="linkedes" href="#">YOUTUBE</a></li>

3 个答案:

答案 0 :(得分:3)

您可以使用css attribute selectors向匹配的元素添加特定样式

a[href='#'] {
  display: none;
}
<li>
  <a class="linkedes" href="http//:Someurl ....">LINK</a>
  <a class="linkedes" href="#">FACEBOOK</a>
  <a class="linkedes" href="#">TWITTER</a>
  <a class="linkedes" href="#">INSTAGRAM</a>
  <a class="linkedes" href="http//:Someurl ....">PLAYSTORE</a>
  <a class="linkedes" href="#">GITHUB</a>
  <a class="linkedes" href="#">YOUTUBE</a></li>

答案 1 :(得分:1)

您可以像这样使用jQuery查找和隐藏:

$('a[href="#"').hide();

将其放入脚本标签中,并在页面加载后执行:

$(document).ready(function(){
    $('a[href="#"').hide();
});

答案 2 :(得分:1)

尝试以下操作:首先,使用getElementsByClassName获取所有链接,然后使用Array.prototype.forEach迭代链接,如果style添加href属性以隐藏链接匹配#

const allLinks = document.getElementsByClassName('linkedes');
[].forEach.call(allLinks,link => {
  if (link.getAttribute('href') === "#") {
    link.style = "display:none;";
  }
});
<a class="linkedes" href="http//:Someurl ....">LINK</a>
    <a class="linkedes" href="#">FACEBOOK</a>
    <a class="linkedes" href="#">TWITTER</a>
    <a class="linkedes" href="#">INSTAGRAM</a>
    <a class="linkedes" href="http//:Someurl ....">PLAYSTORE</a>
    <a class="linkedes" href="#">GITHUB</a>
    <a class="linkedes" href="#">YOUTUBE</a></li>