在Ajax调用之后更改DropDownlist选定的项文本

时间:2016-03-30 15:38:54

标签: jquery asp.net ajax

我有大型服务器端绑定下拉列表,其项目类似如下:

  • 第1项(现场)
  • 第2项(现场)
  • 第3项(离线)

当我更改每个项目的状态而不是立即从服务器端重新绑定列表时,我只想更新所选的项目文本,直到用户再次重新加载该页面。

我通过ajax调用服务来执行服务器端工作,我希望在成功时进行此更改,但无论我对下拉列表做什么都不会影响它。

这是我遇到问题的部分:

 Public Sub Initialize_Object(ByRef TaskObject, Task_Collection)

 Dim Task_begin As Variant, Method_Parameters As Variant

 Task_begin = Task_Collection("Method")

 CallByName TaskObject, Task_begin, VbMethod, Method_Parameters

这是下拉列表的HTML代码:

      $.ajax('/services/area/somefunction', {
            type: 'POST',
            data: {
               Id: id               
            },
            success: function (xhr, message, error) {  

            //do various stuff and then update dropdown    
            $("option:selected", ddl).text('test');    

            },    
            error: function (xhr, message, error) {
              // alert user of error

            }

        });
        return false;
    };

以及其他一些jquery部分以获取更多信息:

 <asp:DropDownList ID="ddl_items" runat="server" ClientIDMode="Static" CssClass="chosen-select"></asp:DropDownList>

关于更改ddl

 // Initialiser
CustomStuff.Init = function () {
    ddl = document.getElementById('ddl_items');       
    $(ddl).on('change', getInfoForItem);
}

我已经尝试更改下拉列表和.html的索引但似乎没有任何效果。 我在成功中显示和隐藏各种div并且有效,但为什么我似乎无法更改下拉项目文本?

0 个答案:

没有答案