当我来到服务器代码时,为什么Dropdownlist SelectedIndex始终为0

时间:2014-04-15 10:12:21

标签: c# javascript jquery asp.net

我有一个usercontrol,当我按下按钮时,通过脚本将opend作为对话框获取。

在显示此usercontroled之前,我通过对服务器的ajax调用填充usercontrol包含的两个下拉列表。

我通过jqyery填充这两个列表,并将所选索引设置为desierd值。

在用户控件内部,我有一个按钮,用作"购买"按钮和两个下拉列表项是产品。

在我的第一个服务器端检查我检查两个下拉列表的selectedindex是否为0并且由于某种原因它始终是。

Jquery代码:

 success: function (data, textStatus, jqXHR) {
                    $.each(data.List, function (key, value) {
                        $("#ctl00_mainAndRightContent_ctl00_SelectResourse_ResourceTypes").append('<option value=' + key + '>' + value + '</option>')

                        //if only one item is returned
                        if ($(data.List).length == 1) {
                            //$("#ctl00_mainAndRightContent_ctl00_SelectResourse_ResourceTypes option:selected").removeAttr("selected");
                            $("#ctl00_mainAndRightContent_ctl00_SelectResourse_ResourceTypes option:contains('" + value + "')").attr('selected', true).siblings().removeAttr('selected');
                            $("#ctl00_mainAndRightContent_ctl00_SelectResourse_ResourceTypes").prop('selectedIndex', 1);
                        }
                    });
                    $("#ctl00_mainAndRightContent_ctl00_SelectResourse_EducationTypes").append('<option value =' + data.Id + '>' + 'inserted' + '</option>')
                    $("#ctl00_mainAndRightContent_ctl00_SelectResourse_EducationTypes").prop('selectedIndex', 0);
                    $("#ctl00_mainAndRightContent_ctl00_SelectResourse_EducationTypes option").attr('selected', true);}

我在ajax调用之后得到了令人厌恶的结果,但是当我来到服务器端时 我看到This

我在这里缺少什么?

编辑:

我在萤火虫here

中看到的图片

2 个答案:

答案 0 :(得分:0)

当你通过脚本插入项目时,viewstate变得过时并且不保存值。

我在这里找到答案: http://forums.asp.net/t/1745879.aspx?Empty+value+DropDown+when+Postback+after+use+jquery+ajax

答案 1 :(得分:-2)

请检查这些下拉列表是否有

runat=server