使用jquery在gridview中禁用按钮

时间:2011-01-17 07:27:37

标签: javascript asp.net jquery

我有一个gridview,在第6列有一个链接按钮。我想根据第7列的值启用/禁用链接按钮....我使用以下代码。但它不会工作......

$('#<%=xgvVisitersRegister .ClientID%> tr').each(function() {
        if ($(this).find('td:eq(7)').text() != "") {
            $(this).find('td:eq(6)').attr("disabled", true);
            }
            else {
               $(this).find('td:eq(6)').attr("disabled", false);
            }
        });

请帮助我纠正它.. 提前谢谢......

3 个答案:

答案 0 :(得分:2)

尝试禁用td内的链接按钮,而不是禁用td。

这样的东西
$(this).find('td:eq(6) a').attr("disabled", true);

在td中找到锚标记。

但更好的方法是在服务器端检查这个。

您可以挂钩RowDataBound事件,并且可以检查此内容。

答案 1 :(得分:1)

为什么要使用Jquery执行此任务,同时可以使用Gridview的RowDataBound事件轻松实现此任务。 试试这个:

Protected Sub gvSample_RowDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles gvSample.RowDataBound

    Dim objDRV As DataRowView = CType(e.Row.DataItem, DataRowView)
    If e.Row.RowType = DataControlRowType.DataRow Then
        Dim btnApprove As LinkButton = CType(e.Row.FindControl("btnApprove"), LinkButton)

        If Not objDRV("Column7") Is Nothing AndAlso objDRV("Column7").ToString() <> "" Then
            btnApprove.Enabled = False
        Else
            btnApprove.Enabled = True
        End If
    End If

    End Sub

答案 2 :(得分:0)

为什么选择jQuery?
你试过LinkButton.Enabled Property吗?