5

我在页面中有一个链接按钮,例如:

<asp:LinkButton ID="edit" runat="server" OnClick="edit_Click" Enabled="False">ویرایش</asp:LinkButton>

我想在 javascript 中启用/禁用它。

我使用此代码但设置为可见

var objedit = document.getElementById('<%= edit.ClientID.ToString() %>');
objedit.style.display = "none";

我使用此代码但未启用

if (count == 1) {
    objedit.disabled = false;
} else {
    objedit.disabled = true;
}

我可以点击,但链接按钮被禁用。

在此处输入图像描述

4

5 回答 5

0

那么,这是你想要的吗?-- 更新,在 Chrome 和 Firefox 中测试
http://jsfiddle.net/hzaR6/
http://jsfiddle.net/hzaR6/2/

更新的方式

您可以使用class名称来定义禁用元素,您可以对其样式进行更多控制......等等。

$("#link").toggleClass("disabled"); //This will simply toggle the class

对于CSS

#link.disabled{
    z-index:-1;            /*Make it not clickable*/
    position:relative;
    opacity: .5;           /*Lighter*/
}​

你可以在这里做任何你想做的事。

好的旧form元素方式

$("#edit").attr("disabled", false);
 -or-
document.getElementBy("edit").disabled = false;

这将禁用任何表单元素。如果要启用它们,只需更改falsetrue.


var a = document.getElementBy("edit").disabled;

a将是true如果元素被禁用。否则会false

于 2012-04-08T05:58:25.467 回答
0

此链接应为您提供所需的一切。您不能真正“禁用”链接按钮,因为它只是一个附加了一些 javascript 的链接。基本上,您需要将点击处理程序重新分配给返回 void 或 false 的内容。

您可以使用以下脚本引用链接的 ID:

<script runat="server">
   var a = document.getElementById('<%= edit.ClientID.ToString() %>')
</script>
于 2012-04-08T05:58:35.617 回答
0

尝试这个

var objedit = document.getElementById("edit"); //not editid (editid is a variable)
objedit.disabled = true; //if I'm not mistaken its true/false or disabled
于 2012-04-08T05:34:11.890 回答
0

要禁用元素:

document.getElementById('<%# edit.ClientID %>').disabled = 'disabled';
//.ToString() is not necessary; ClientID is a string.

重新启用:

document.getElementById('<%# edit.ClientID %>').disabled = '';

当然,也可以在加载文档(DOM)之后完成。

于 2016-05-06T00:38:27.403 回答
0
document.getElementById("lnk").style.display = "none";
于 2016-04-05T05:43:46.790 回答