0

我正在使用 jquery 复选框下拉插件进行多项选择,其中包含以下格式的 json 数据:

{"message":[{"id":"xyz","name":"USERA"},{"id":"abc","name":"USERB"}]}

我试图用 json 数据填充下拉列表,但我未能成功。任何帮助表示赞赏。

请在下面找到我用来填充下拉列表的方法:

$.ajax({type : "GET",
        url : "",
        data : "",
        dataType : "json",
        success : function(data) {

            var Options = '';
            $.each($(data.message), function() {

                Options +='<option value="'+this.name+'">'+this.name+'</option>'
            });
            $("#dropdown1").append(Options);
        }
    });
4

3 回答 3

0

This line -

$.each($(data.message), function() { ... }

Should be something like this -

$.each(data.message), function(index,elem) { ... });

Then the line that you use to concatenate the HTML should appear like this -

Options +='<option value="'+elem.name+'">'+elem.name+'</option>';

Also you were missing a semicolon on the line with Options +=.

于 2012-07-10T14:41:48.867 回答
0

在我的代码中发现 wat 出错了.. dropdownchecklist() 必须在附加数据后立即调用,例如

success : function(data) {
     var Options = '';
     $.each($(data.message), function() {
         Options +='<option value="'+this.name+'">'+this.name+'</option>'
     });
     $("#dropdown1").append(Options);
     $("#dropdown1").dropdownchecklist();
}
于 2012-07-11T16:15:30.443 回答
0

尝试这个:

$.ajax({type : "GET",
        url : "",
        data : "",
        dataType : "json",
        success : function(data) {

            $.each($(data.message), function(index,val) {

               $('#dropdown1').append($("<option></option>").val(val.name).html(val.name));
            });

        }
    });
于 2012-07-10T14:47:12.680 回答