使用jquery禁用linkbutton(锚标记)

时间:2013-04-09 13:45:35

标签: jquery linkbutton javascript

我的jquery在第一次点击发生后从点击中禁用了我的链接按钮时出现问题。

点击还应该删除并添加一些cssStyles。

问题不在于cssStyles被更改后,linkbutton(在html中呈现的anchortag)会被禁用。

回发后(由我手动触发)它会被禁用。但那不是我想要的。我希望它是一个平稳的交易,没有回发。

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

2 个答案:

答案 0 :(得分:2)

你也可以试试这个:

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

答案 1 :(得分: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?