0

I have issue in accesing drop down item from c# code behind

Scenario: i am modifying drop down based on user selection using jquery/ajax call. while accesing the drop down item from code behind, still it retains old list.

Please help to access updated drop down list from c# code behind.

Sample code

Jquery code :

$.ajax({
            type: 'POST',
            url: "Search.aspx/LoadNewOptions",
            contentType: 'application/json;charset=utf-8;',
            dataType: "json",
            data: "",
            success: function (data) {
                 $("#dropdown").empty();              

                $($.parseJSON(data.d)).each(function () {
                    var Option = $('<option />');

                   xOption.attr('value', this.value).text(this.label);
                    $('#dropdown').append(Option);

                    }
                });
            },
            error: function (XMLHttpRequest, textStatus, errorThrown) {
                alert(errorThrown);
            }
        });

C# Code behind code :

dropdown.SelectedItem.Value.Trim()   // returns old value

Alternate Solution: Created separate javascript function and store selected item values in hidden variable. No issues in accessing hidden variables from code behind.

4

2 回答 2

0

您的旧值没有更改的原因是服务器端不知道新值。除非您将其发布回服务器,否则它将不可见。

于 2012-07-31T21:04:17.783 回答
0

除非您告诉服务器,否则服务器不知道客户端发生了什么。

看起来您正在动态地将元素附加到下拉列表中。如果您在页面下次执行时重新绑定列表,它不知道您已在客户端对其进行了修改。

  • 隐藏字段适用于简单情况

  • 您可以检查 POST 并查看它是否包含列表中不存在的值,如果是,则添加它

于 2012-07-31T19:14:34.290 回答