0

テーブルを動的に作成する asp.net (C#) Web ページを作成しました。表の列の 1 つは、ID(int) を持つチェックボックスです。次のように、SQL クエリですべてのチェックボックスの ID を使用したいと考えています。

select *
from table
where ID in (1,2,3,4)

サーバー側のすべてのチェック ボックスから ID のリストを取得する方法はありますか?

チェックボックスを生成するために使用するコードのスニペットを次に示します。

foreach (DataRow dr in dt.Rows)
{
   string Compatible_Controls = (
       "<tr>" +
        "<td><input type='CheckBox' ID='" +(dr["id"]) + "' /></td>" +
        "<td>" + (dr["Control_Name"]) + "</td>" +
        "<td>" + (dr["Control_Statement"]) + "</td>" +
        "<td>" + (dr["Regulation_type"]) + "</td>" +
       "</tr>" );

生成されるものは次のとおりです。

<tr>
    <td><input type='CheckBox' ID='3' /></td>
    <td>xxxxxx</td>
    <td>xxxxxxxxx</td>
    <td>xxxxxxxx</td>
</tr>
4

1 に答える 1

1

いいえ、id属性はサーバーに投稿されません。ただし、属性を使用して要素nameを区別することはできます。inputこのようなもの:

<input type='CheckBox' name='3' />

または、CSS/JavaScript で使用する属性が引き続き必要な場合は、id両方を使用できます。

<input type='CheckBox' name='3' ID='3' />

次に、サーバー側のコードでは、フォーム コレクションに、nameそこに投稿されたさまざまな値すべてのキーが含まれます。(nameもちろん、 がクライアント側のフォームで一意であることを確認してください。) WebForms を使用しているか MVC を使用しているかについて言及していないため、サーバーに投稿されたときにこの情報にアクセスできるさまざまな方法があります。 . WebForms の場合Request.Form、キーと値のペアが含まれます。MVC の場合は、コントローラー アクションにパラメーターを追加するFormCollectionだけで、キーと値のペアが設定されます。

于 2013-03-29T11:49:03.857 に答える