0

asp.netをc#で使用しています。

グリッドビューがあり、TemplateField列があります。TemplateField列の中にはEditItemTemplateがあり、EditItemTemplateの中にはlinkbutton(LinkBut​​ton1)があります。

javascript関数からリンクボタンでgetelementbyidを実行しようとしています:

document.getElementById("<%= LinkButton1.ClientID %>").disabled = true;

しかし、コンパイルすると、「LinkBut​​ton1」が現在のコンテキストに存在しないというエラーが発生します。

aspxグリッドビューコード:

<asp:GridView ID="GridView1" runat="server" Height="157px" Width="814px" 
             CellPadding="4" ForeColor="#333333" GridLines="None"
             OnRowEditing="GridView1_RowEditing"
             OnRowCancelingEdit="GridView1_RowCancelingEdit" 
             OnRowUpdating="GridView1_RowUpdating" AutoGenerateColumns="False" 
             OnRowDataBound="GridView1_RowDataBound"
              onrowdeleting="GridView1_RowDeleting" Font-Size="Medium" 
            AllowPaging="True" onpageindexchanged="GridView1_PageIndexChanged" onpageindexchanging="GridView1_PageIndexChanging"     >
            <RowStyle BackColor="#F7F6F3" ForeColor="#333333" />
<Columns>
<asp:TemplateField ShowHeader="False">
<EditItemTemplate>
        <asp:LinkButton ID="LinkButton1" runat="server" CausesValidation="True" CommandName="Update"
            Text="Actualizar" ValidationGroup="upd_validation"></asp:LinkButton>
        <asp:LinkButton ID="LinkButton2" runat="server" CausesValidation="False" CommandName="Cancel"
            Text="Cancelar"></asp:LinkButton>
</EditItemTemplate>      
<ItemTemplate>
        <asp:LinkButton ID="LinkButton3" runat="server" CausesValidation="False" CommandName="Edit"
            Text="Editar"></asp:LinkButton>
        <asp:LinkButton ID="LinkButton4" runat="server" CausesValidation="False" CommandName="Delete"
            Text="Eliminar" CommandArgument='<%# Container.DataItemIndex %>' onclientClick="return ConfirmDelete()"></asp:LinkButton>                         
</ItemTemplate>                
</asp:TemplateField>

どうすればこれを解決できますか?

ありがとう。

4

2 に答える 2

2

UはいくつかのダミーのcssクラスをLinkBut​​tonに追加でき(例「disableLink」)、Jqueryを使用すると、次のコードを使用して簡単に実現できます。

  $('.disableLink').each(function (i, obj) { 
      $(this).disabled = true;
      // OR
      $(this).attr('disabled','disabled');
  }
于 2012-09-24T05:08:18.430 に答える
1

あなたはこれを試すことができます。

  $(document).ready(function() {
       $("#<%=grid1.ClientID%> td a").css("visibility","hidden");
  });
于 2012-09-24T04:58:59.980 に答える