2012-04-18 4 views
0

CheckBox 및 gridview가있는 양식이 있습니다. CheckBox의 선택을 취소하면 GridView의 컨트롤이 비활성화됩니다. 여기 내 gridview에 영문입니다 : 이미 숨 깁니다이 그리드를 표시하는 jQuery 코드를 작성했습니다aspx 양식에서 jquery를 사용하여 gridview 컨트롤 사용 안 함

<asp:CheckBox ID="chkActivateSettings" runat="server" Text="Activate Restriction Settings."> 
            </asp:CheckBox> 

:

      <div id="gridVersion" runat="server"> 
           <ac:GridViewWithPager ID="gdvwAllowedVersion" runat="server" UseCustomPager="True" 
            AllowPaging="True" AutoGenerateColumns="False" Width="50%"> 
            <Columns> 
             <asp:TemplateField ItemStyle-CssClass="centerdata"> 
              <ItemTemplate> 
               <asp:RadioButton ID="rdblSelectedVersionList" runat="server" AutoPostBack="true" Checked='<%#Eval("IsSelected") %>' 
                EnableViewState="true" OnCheckedChanged="rdblSelectedVersionList_CheckedChanged" /> 
              </ItemTemplate> 
              <HeaderStyle HorizontalAlign="Center" Width="2%"></HeaderStyle> 
             </asp:TemplateField> 
             <asp:TemplateField HeaderText="IDEAlliance Version" HeaderStyle-Width="11%" HeaderStyle-HorizontalAlign="Left"> 
              <ItemTemplate> 
               <asp:Label ID="lblVersion" runat="server" Text='<%# Eval("IdeAllianceVersion") %>' /> 
              </ItemTemplate> 
              <HeaderStyle HorizontalAlign="Left" Width="11%"></HeaderStyle> 
             </asp:TemplateField> 
             <asp:TemplateField HeaderText="Restrict Import Of" ItemStyle-CssClass="centerdata" 
              HeaderStyle-Width="2%" ItemStyle-HorizontalAlign="Center" ItemStyle-Width="2%"> 
              <ItemTemplate> 
               <asp:CheckBox ID="chkCheckRestrictImport" runat="server" Checked='<%# Eval("RestrictedForImport")%>' /> 
              </ItemTemplate> 
              <HeaderStyle HorizontalAlign="Center" Width="2%"></HeaderStyle> 
              <ItemStyle HorizontalAlign="Center" Width="2%"></ItemStyle> 
             </asp:TemplateField> 
             <asp:TemplateField HeaderText="Restrict Upgrade To" ItemStyle-CssClass="centerdata" 
              HeaderStyle-Width="2%" ItemStyle-HorizontalAlign="Left" ItemStyle-Width="2%"> 
              <ItemTemplate> 
               <asp:CheckBox ID="chkCheckRestrictUpgrade" runat="server" Checked='<%# Eval("RestrictedForUpgrade")%>' /> 
              </ItemTemplate> 
              <HeaderStyle HorizontalAlign="Center" Width="2%"></HeaderStyle> 
              <ItemStyle HorizontalAlign="Center" Width="2%"></ItemStyle> 
             </asp:TemplateField> 
            </Columns> 
           </ac:GridViewWithPager> 
          </div> 

내 CheckBox 컨트롤이 같은 것입니다. 하지만 지금 내가 원하는 것은 CheckBox의 선택을 취소하면이 그리드에서 컨트롤을 비활성화하는 것입니다. 그래서이 코드를 수정하고 싶습니다.

$(document).ready(function() { 

    if ($('#<%=chkActivateSettings.ClientID %>').is(":checked")) { 
     //show the hidden div 
     $('#<%=gridVersion.ClientID %>').show("fast"); 
    } 
    else { 
     //otherwise, hide it 
     $('#<%=gridVersion.ClientID %>').hide("fast"); 
    } 
    // Add onclick handler to checkbox w/id checkme 
    $('#<%=chkActivateSettings.ClientID %>').click(function() { 

     // If checked 
     if ($('#<%=chkActivateSettings.ClientID %>').is(":checked")) { 
      //show the hidden div 
      $('#<%=gridVersion.ClientID %>').Ena("fast"); 
     } 
     else { 
      //otherwise, hide it 
      $('#<%=gridVersion.ClientID %>').hide("fast"); 
     } 
    }); 

}); 

앞으로의 일반적인 협력을 기대합니다.

+0

을 GridViewWithPager 사용자 정의 사용자 정의 컨트롤입니까? 그것은 일반적인 asp.net의 gridview와 같은 Enabled 속성을 가지고 있습니까? – Coder

+0

네, 맞춤 컨트롤입니다. GridView에서 상속됩니다. –

답변

0

이 시도 :

1) 사용 추가 gridview에 마크 업 = "진정한"

<ac:GridViewWithPager ID="gdvwAllowedVersion" runat="server" Enabled="True" UseCustomPager="True" AllowPaging="True" AutoGenerateColumns="False" Width="50%"> 

2)/비활성화있는 gridview 수 있도록 jQuery의 DOM 조작 방법 attr(key, value)를 사용

$(document).ready(function() { 

    // Add onclick handler to checkbox w/id checkme 
    $('#<%=chkActivateSettings.ClientID %>').click(function() { 

     // If checked 
     if ($('#<%=chkActivateSettings.ClientID %>').is(":checked")) { 
      //show the hidden div 
      $('#<%=gdvwAllowedVersion.ClientID %>').attr("disabled", false); 
     } 
     else { 
      //otherwise, hide it 
      $('#<%=gdvwAllowedVersion.ClientID %>').attr("disabled", true); 
     } 
    }); 

}); 
+0

$ ('# <% = gridVersion.ClientID %>'). attr ("disabled", true); 그리드를 비활성화하지 않습니다. –

+0

예 div id를 쓰고 gridview id로 업데이트했습니다. – Coder

+0

여전히 작동하지 않습니다. –

관련 문제