Html'选择'控件总是将选择的索引返回为0

时间:2010-07-23 05:49:31

标签: javascript asp.net html select controls

我在aspx页面上放置了HTML'Select'控件,它的项目(选项)是使用javasvript动态加载的。下拉列表中的项目在网页上正确显示。但是当我从下拉列表中选择任何项目时,它的选择索引不会在aspx.cs文件中返回。实际上,它将选择的索引显示为0,将“选择”html控件的大小显示为-1。 我在body标签中插入了javascript(在dropdown中插入项目)。我也试过在Body onload上调用javascript函数。但它没有帮助。 请指教。

2 个答案:

答案 0 :(得分:2)

因为您通过javascript填充了列表,所以这些值不在ViewState中。因此,当它回发时,后面的代码不知道列表中的值。

您可以使用Request.Form [“ddWhatever”]来获取所选项目的值,但是当您在客户端上填充服务器端功能时,您将失去服务器端功能。

答案 1 :(得分:1)

这是正常行为。 为什么不绑定服务器端的值?使用<asp:DropDownList>代替<select>,给它一个ID,并在将其返回到客户端之前从.NET代码中填充它(可能在Page_Load上,并确保在绑定之前检查!IsPostBack)