简体   繁体   中英

Disable link to current page number. (anchor tag)

I have one anchor tag. I want to disable it after once it clicked. I tried the following way.

  print "<script type='text/javascript'>parent.window.frames[2].document.getElementById('pagination').innerHTML+=\"<a href=# onclick='pageshow`($i);this.disabled=true'>$i</a>&nbsp;\"</script>";

Note: I don't want to disable the link. I want to disable the link operation. Like Google search page.

Eg: 1 2 3 4 5 Next

Here once I clicked the 1st page I can't click the same page again. Same thing I want.

您还可以使用以下方法禁用锚标记。

<a href='URL' style='text-decoration:none;cursor: auto;' onClick='return false'>LINK</a>

Having reread the question…

Google do not "Disable the link after it has been clicked".

They just don't link to the current page. Their markup is appalling so I won't copy it, a simplified example (for page 2) would be:

<ol>
  <li><a>1</a></li>
  <li>2</li>
  <li><a>3</a></li>
  <li><a>4</a></li>
</ol>  

The best answer I've seen to this question involves using jQuery.

How to enable or disable an anchor using jQuery?

here's the code incase that link breaks. This disables <a id="current"> by preventing e (the click event on the anchor)

$(document).ready(function() {
  $('a#current').click(function(e) {
    e.preventDefault();
  });
});
<a href="…" onclick="this.removeAttribute('href');">

Javascript isn't the right way to do this, but I'll provide an answer for the heck of it:

var links = document.getElementsByTagName('a'), link, children;
for(var i = 0; i < links.length; i++) {
    link = links[i];
    if(link.href == window.location.href) {
        children = link.childNodes;
        for(var j = 0; j < children.length; j++) {
            link.parentNode.insertBefore(children[j], link);
        }
        link.parentNode.removeChild(link);
    }
}

Edit: I don't know if "he-double-hockey-sticks" is "foul language" on SO but if it is, this will be deleted mysteriously some months from now so I've used "heck" instead.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM