2010-03-27 44 views
4

我有一個錨標籤。我想 點擊後禁用它。我 嘗試了以下方法。禁用指向當前頁碼的鏈接。 (錨標籤)

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>"; 

注: 我不希望禁用的鏈接。我想禁用鏈接操作。像Google搜索頁面一樣。

例如:1 2 3 4 5下一頁

這裏一旦我點擊第一頁,我不能再次點擊同一頁面。我想要的是同樣的東西

回答

1
<a href="…" onclick="this.removeAttribute('href');"> 
+0

禁用<a id="current">我覺得這是防止甚至第一次點擊的工作,因爲在該函數返回和瀏覽器決定在點擊採取行動的時候, 沒有href。 – Neek 2012-02-11 06:47:28

7

您還可以使用以下方法禁用錨標記。

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

這是一個有點誤導性的答案,並沒有回答這個問題,我想大多數人來這裏會問,這是如何禁用鏈接一旦點擊,例如在購物車結賬時,當你不想'結帳'鏈接點擊不止一次。您的解決方案可防止鏈接導致任何導航。請參閱http://stackoverflow.com/questions/1164635/how-to-enable-or-disable-an-anchor-using-jquery – Neek 2012-02-11 06:46:25

3

已經重讀的問題...

谷歌沒有「禁用鏈接被點擊後」。

他們只是不鏈接到當前頁面。他們的標記是慘不忍睹的,所以我不會把它複製,一個簡單的例子(2頁)將是:

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

JavaScript是不是這樣做的正確的方式,但我會提供了一個答案它赫克:

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); 
    } 
} 

編輯:我不知道。「他-雙曲棍球棒」是「粗口」的左右,但如果是這樣,這將是神祕的幾個月現在這麼刪除我用「heck」代替。

2

我看到這個問題的最佳答案涉及到使用jQuery。

How to enable or disable an anchor using jQuery?

這裏的櫃面該鏈接中斷的代碼。 通過防止e(在錨的單擊事件)

$(document).ready(function() { 
    $('a#current').click(function(e) { 
    e.preventDefault(); 
    }); 
}); 
+0

在你的情況下,我會使所有頁碼鏈接有條件地禁用,例如,當該頁面號碼是#current或其他內容。 – 2012-04-18 23:42:58

相關問題