2013-04-09 107 views
0

我第一次單擊發生後,我的jquery禁用了點擊後禁用了我的linkbutton。使用jquery禁用linkbutton(錨標記)

點擊還應該刪除並添加一些cssStyles。

問題是,在cssStyles更改後,linkbutton(呈現在html中的錨點)dosent被禁用。

回發後(由我手動觸發)它被禁用。但那不是我想要的。我希望它是一個平穩的交易,並沒有回傳。

MarkupCode:

<asp:LinkButton ID="LinkButton" runat="server" OnClientClick="" CommandName="Answer" CssClass="linkButton" > 
    <asp:Panel ID="PoptionText" runat="server" CssClass="buttonStyle"> 
     <%# Eval("optionText") %> 
     <div> 
     <asp:Label ID="lbRätt" runat="server" Visible="false" CssClass="aktiv"></asp:Label> 
     </div> 
    </asp:Panel> 
</asp:LinkButton> 

Javascript代碼:

$(document).ready(function() { 
    $("#LinkButton").click(function() {  
     $("#LinkButton").attr("disabled", "disabled"); //this does not happen 
     Rightanswer(); // This happens. Function to add remove cssStyles 
    }) 
    $("#LinkButton").click(function (e) { 
     if ($("#LinkButton").attr("disabled") == "disabled") { 
      e.preventDefault(); 
     } 
    });  
}); 

回答

1

你不能使用disabled屬性錨標記,只有input元素具有disabled屬性。你可以嘗試像

$("#LinkButton").click(function (e) { 
    if ($("#LinkButton").hasClass(className)) { 
     // If have class dont follow href so will work only for first time 
     e.preventDefault(); 
    } 
    Rightanswer(); // Add/Remove class 
});  

這可能有助於Should the HTML Anchor Tag Honor the Disabled Attribute?

1

你也可以試試這個:

$("#<%=LinkButton.ClientID %>").click(function (e) { 
    e.preventDefault(); 
    $(this).attr("disabled", "disabled"); 
    // Whateverr your code goes here 
});