1

複数の行を持つ GridView があり、各行に CheckBox と HiddenField があります。ボタンをクリックすると、CheckBox がチェックされているかどうかを確認し、チェックされている場合は、その行の HiddenField の値を取得します。各行の各 HiddenField には異なる値があります。ユーザーは複数の CheckBox をチェックできるため、各 HiddenField の値を取得できる必要があります。

どんな助けでも本当に感謝します。

ありがとうございました

4

3 に答える 3

1

グリッドの各行をループし、チェックボックスがチェックされているかどうかを確認し、チェックされている場合は非表示フィールドの値を取得します。

foreach (GridViewRow row in grdView.Rows)
{
    if((row.FindControl("chkBoxId") as CheckBox).Checked)
    {
        string hiddenFieldValue = (row.FindControl("hiddenFieldId") as HiddenField).Value;
    }
}

chkBoxId はページのチェックボックスの ID プロパティで、hiddenFieldId はページの hiddenfield コントロールの ID です。

于 2012-08-09T04:22:36.833 に答える
0
Possible duplicates.

asp .netを使用してチェックされるグリッドビュー内のチェックボックスの値を取得する方法

gridview (Asp.net) c# で選択したチェックボックスの ID を取得する

チェックボックスがチェックされているグリッドビューで値を取得するには?

上記のリンクの答えの1つ:

foreach(Gridviewrow gvr in Gridview1.Rows)
{
 if(((CheckBox)gvr.findcontrol("CheckBox1")).Checked == true)
 {

   //Get hidden field value here.
 }
}
于 2012-08-09T04:15:58.457 に答える
0

次のようなコードを使用できます。

protected void BtnMybutton_click( Object sender, EventArgs e)
{
    Button Mybutton = (Button) sender;
    GridViewRow row = (GridViewRow) MyButton.NamingContainer;
    CheckBox ChkTest = (CheckBox) row.FindControl("ChkTest");
    HidenFiekd HdfValue = (HidenField) row.FindControl("HdfValue");
    if(ChkTest.Checked)
    {
        Console.WriteLine(HdfValues.Value);
    }
}
于 2012-08-09T04:22:30.483 に答える