需要从动态命名的selectbox中获取值

本文关键字:selectbox 获取 动态 | 更新日期: 2023-09-27 18:29:39

我有一个数据列表,里面有这个:

<select id="ddl<%# Eval("ID") %>" name="ddl<%# Eval("ID") %>">
                <option>1</option>
                <option>2</option>
                <option>3</option>
                <option>4</option>
                <option>5</option>
                <option>6</option>
                <option>7</option>
                <option>8</option>
                <option>9</option>
                <option>10</option>
                <option>11</option>
                <option>12</option>
                <option>13</option>
                <option>14</option>
                <option>15</option>
                <option>16</option>
                <option>17</option>
                <option>18</option>
                <option>19</option>
                <option>20</option>
            </select>

由于输入是动态命名的,我无法添加runat-server标记。

在一个按钮事件的代码后面,我正在尝试获取选项文本;我正在使用:

string itemquantity = Request.Form.GetValues("ddl" + itemid).ToString();

未找到返回对象引用的。

有什么办法吗?

需要从动态命名的selectbox中获取值

使用DataList的OnItemDataBound事件,在该事件中可以使用FindControl方法查找此Select。。

但您应该添加runat="server"标记或使用DropdownList控件。

创建一个隐藏字段。使用jquery,对于任何dropdownlist上的每一个更改,都会创建一个事件,从每个dropdownlists中读取值,并将其作为列表存储在hiddenfield中,例如逗号分隔。