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> \"</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.
You can also disable the anchor tag by using the following way.
<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.
精彩评论