2011-11-14 5 views
1

グリッドビューがあり、aspチェックボックスコントロールとして1つの列があり、ユーザーは1つのチェックボックスをオンにして編集ボタンをクリックしてその列を編集します。グリッドビューでチェックボックスを1つだけ選択し、そのチェック行を編集します

このための私のコードは

    <asp:GridView runat="server" CssClass="width" ID="gvGrades" AutoGenerateColumns="false" ShowHeader="true" OnRowCancelingEdit="gvGrades_RowCancelingEdit"       OnRowCommand="gvGrades_RowCommand" OnRowDataBound="gvGrades_RowDataBound" OnRowEditing="gvGrades_RowEditing"        OnRowUpdated="gvGrades_RowUpdated" OnRowUpdating="gvGrades_RowUpdating" OnRowDeleting="gvGrades_RowDeleting"> 
          <Columns> 
           <asp:TemplateField> 
            <HeaderTemplate> 
             Select 

            </HeaderTemplate> 
            <ItemTemplate> 
             <asp:CheckBox ID="chkSelect" class="asp" runat="server" /> 

             <asp:Label ID="lblId" runat="server" Text='<%# Bind("id") %>' Visible="false"></asp:Label> 
            </ItemTemplate> 
           </asp:TemplateField> 
           <asp:TemplateField> 
            <HeaderTemplate> 
             Grade Name 
            </HeaderTemplate> 
            <ItemTemplate> 
             <asp:Label ID="lblName" runat="server" Text='<%# Bind("grade_name") %>'></asp:Label> 
            </ItemTemplate> 

           </asp:TemplateField> 
           <asp:TemplateField> 
            <HeaderTemplate> 
             Organization Name 
            </HeaderTemplate> 
            <ItemTemplate> 
             <asp:Label ID="lblOrganizationName" runat="server" Text='<%# Bind("organization_name") %>'></asp:Label> 
            </ItemTemplate> 
           </asp:TemplateField> 
           <asp:TemplateField> 
            <HeaderTemplate> 
             Minimum Basic Salary 
            </HeaderTemplate> 
            <ItemTemplate> 
             <asp:Label ID="lblSalary" runat="server" Text='<%# Bind("min_basic_salary") %>'></asp:Label> 
            </ItemTemplate> 

           </asp:TemplateField> 
           <asp:TemplateField> 
            <ItemTemplate> 
             <asp:LinkButton runat="server" ID="lnkDelete" CommandName="Delete" Text="Delete"></asp:LinkButton> 
            </ItemTemplate> 
           </asp:TemplateField> 
           <asp:TemplateField> 
            <ItemTemplate> 
             <asp:LinkButton runat="server" ID="lnkEdit" CommandName="Edit" Text="Edit"></asp:LinkButton> 
            </ItemTemplate> 

           </asp:TemplateField> 
          </Columns> 
         </asp:GridView> 
        </fieldset> 
       </ContentTemplate> 
      </asp:UpdatePanel> 
      <asp:Button Text="Add" Width="70px" ID="btnAdd" runat="server" OnClick="btnAdd_Click" />&nbsp;&nbsp; 
      <asp:Button Text="Edit" ID="btnEdit" Width="70px" runat="server" OnClick="btnEdit_Click" 
       /> 

ある編集ボタンのクリックのコードを入力してくださいまた、

おかげ

+2

40%????????? –

+0

これまでに何を試しましたか?私たちは、あなたが自分で何らかの努力をしているならば、あなたがそれを修正するのを手伝います私たちはあなたのためにあなたの仕事をするためにここにいません。 – Becuzz

+0

私はポストバックコードを持っていますが、私はjqueryまたはjavascriptでそれをやりたい –

答えて

1

使用を使用することができますイベント。

あなたはこの

<asp:TemplateField > 
      <ItemTemplate>  
       <asp:CheckBox ID="chb1" AutoPostBack="true" runat="server" /> 
      </ItemTemplate> 
</asp:TemplateField> 

ような何かを行う可能性があります、あなたは編集enable=falseをfiedがしてポストバックであなたがポストバックせずに編集ボタンを有効にするために、以下の手順に従ってくださいenable=true

protected void GVSelectedIndexChanged(object sender, GridViewRowEventArgs e) 
{ 
      var check = (CheckBox) e.Row.FindControl("chb1"); 
      if(check != null) 
      { 
        // do something 
      } 
} 
0

を設定することができます設定することができます[javascriptを使用して]

  1. GridViewのOnRowDataBoundイベントを登録します。

  2. 次に、あなたが得る

  3. [編集]ボタンIdの]パラメータとイベントのonchange JavaScript関数を登録し、チェックボックスを見つけた後、[Onrowboundイベントに]

  4. をitemindexを使用して、チェックボックス、[編集]ボタンを探しますJavaScriptの編集ボタン

  5. JavaScriptを有効にしてください。

ご質問やご質問がありましたら教えてください。

関連する問題