2017-07-27 94 views
0

我有一組沒有名稱的輸入複選框,我想從gridview中查看那些我只查看過的值,我該如何實現?我真的很努力完成它(BtnAdd_Click)。也許你可以幫忙?下面是在.aspx和.aspx.cs代碼:如何從asp.net中的多個複選框中獲取值?

<asp:GridView ID="GvModules" 
     AutoGenerateColumns="False" 
     AllowSorting ="True" 
     OnSorting="GvModules_Sorting" 
     runat="server" 
     CssClass="table table-bordered table-striped table-condensed table-hover table-responsive" OnSelectedIndexChanged="GvModules_SelectedIndexChanged"> 
     <Columns> 
      <asp:BoundField DataField="moduleid" HeaderText="Module ID" /> 
      <asp:BoundField DataField="module_name" HeaderText="Module Name" /> 
      <asp:BoundField DataField="descriptions" HeaderText="Module Descriptions" /> 
      <asp:BoundField DataField="msa_DateTime" HeaderText="Start Date/Time" /> 
      <asp:TemplateField HeaderText="Check To Indicate"> 
       <ItemTemplate> 
        <asp:CheckBox ID="ChkAdd" 
         runat="server" 
         Text="" 
         CommandArgument='<%#Eval("moduleid") %>' 
         OnCommand="ChkAdd_Command" 
         OnClientClick='<%# "javascript:return confirm(\"Add [" + Eval("module_name") + "]\");" %>' /> 
       </ItemTemplate> 
      </asp:TemplateField> 
     </Columns> 
    </asp:GridView> 
</div> 
<div class="form-group"> 
    <div class="col-sm-offset-3 col-sm-9"> 
     <asp:Button ID="BtnAdd" CssClass="btn btn-default" Text="Indicate" OnClick="BtnAdd_Click" runat="server" /> 
    </div> 

</div> 
<div class="row"> 
    <hr /> 
    <asp:Literal ID="LtlSchool" runat="server" /> 
</div> 

這是按鈕的單擊事件:

protected void BtnAdd_Click(object sender, EventArgs e) 
      { 

      } 

回答

0

你可以在GridView控件應用迭代來獲得所選擇的複選框值:

protected void BtnAdd_Click(object sender, EventArgs e) 
      { 
foreach (GridViewRow r in GvModules.Rows) 
      { 
       //Find the checkbox in the current row 
       CheckBox chk = (CheckBox)r.FindControl("ChkAdd"); 


       if (chk!=null && chk.Checked) 
       { 
        //code when checkbox checked 
       } 
      } 
     } 
0

我做到了,但是當我被引導到下一頁時沒有顯示任何值。

  if (chk!=null && chk.Checked) 
      { 
       Response.Redirect("AssociateIndication.aspx"); 
      } 
     } 
    } 
0

試試這個按鈕事件:

protected void BtnAdd_Click(object sender, EventArgs e) 
{ 
    foreach (GridViewRow gvr in GvModules.Rows) 
    { 
     CheckBox chk = (CheckBox)gvr.FindControl("ChkAdd"); 

     if (chk.Checked == true) 
     { 
      // do something here if checkbox is checked 

     } 
    } 
} 
+0

我必須做我的「AssociateIndication.aspx」頁面的東西,以便它顯示的值?因爲我做了你告訴我的,但它仍然不起作用.... – Ain

+0

這是一個正確的問題的答案,你問以上 – AsifAli72090

+0

感謝您的幫助!我會試着看看它不起作用的問題。 – Ain

相關問題