将数据绑定到下拉列表

时间:2017-05-17 12:47:57

标签: javascript jquery .net arrays dropdown

我正在尝试通过全局变量绑定下拉列表(名称是数组名称),它在下面绑定得很好:

Click here - dropdown is populating fine

  var name = ['us', 'china', 'kenya', 'us', 'china', 'kenya', 'us', 'china', 'kenya', 'us', 'china', 'kenya', 'us', 'china', 'kenya', 'us', 'china', 'kenya', 'us', 'china', 'kenya', 'us', 'china', 'kenya', 'us', 'china', 'kenya', 'us', 'china', 'kenya', 'us', 'china', 'kenya', 'us', 'china', 'kenya', 'us', 'china', 'kenya', 'us', 'china', 'kenya'];

但是当我尝试在成功回调函数(fnsuccesscallback)中填充数组(ddList是数组名)时,下拉列表不会填充。

Click here - drop-down is not pupulating

 function fnsuccesscallback(data) {         
            $.each(data.d, function () {              
                ddList.push(this['Value']);             
            });    
            ddList.push('a');
            ddList.push('b');
            ddList.push('c');
            ddList.push('d');

        }   

但我想只在回调函数中填充数组。

你能告诉我如何解决这个问题吗?

更新

Drodown formating screwed up

获取数据但形成下拉列表已经搞砸了

1 个答案:

答案 0 :(得分:0)

正如我在评论中提到的,你的方法不起作用,因为在你尝试将结果附加到select之后,ajax成功函数执行得很好。

您应该在回调期间附加新选项。试一试:

function fnsuccesscallback(data) {
    data.map(function (el) {
        $('.multiselect').append("<option value='" + el.Value + "'>" + el.Value + "</option>");
    });
}