c# - 如何从JSON格式的DataSet中提取DataTable

标签 c# javascript jquery asp.net json

我正在使用 Newtonsoft dll 进行序列化。我目前正在以 Json 格式从 webmethod 返回 DataTable。它工作正常。但我想通过返回 DataSet 而不是 DataTable 来做同样的事情。我尝试了很多方法,但似乎都不起作用。

function GetDropDownData() {
        var myDropDownList = $('.myDropDownLisTId');

        $.ajax({
            type: "POST",
            url: "test.aspx/GetDropDownDataWM",
            data: '{name: "abc" }',
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            success: function (data) {
                $.each(jQuery.parseJSON(data.d), function () {
                    myDropDownList.append($("<option></option>").val(this['id']).html(this['name']));
                });
            },
            failure: function (response) {
                alert(response.d);
            }
        });
    }
    function OnSuccess(response) {
        console.log(response.d);
        alert(response.d);
    }

返回的 Json 数据表:

[{"name":"sam","id":"1"},{"name":"mark","id":"2"}]

返回的 Json 数据集:

 {"patients":[{"name":"sam","id":"1"},{"name":"mark","id":"2"}],"medications":[{"id":"1","medication":"atenolol"},{"id":"2","medication":"amoxicillin"}]}

fiddle Demo

var json=jsonds['patients'];var json=data['patients'];

最佳答案

终于,我成功了。

Ajax Success 中,按照下面的操作...

var dataSet = jQuery.parseJSON(data.d);
var dataTable = dataSet["patients"];

$.each(dataTable, function () {
    myDropDownList.append($("<option></option>").val(this['id']).html(this['name']));
});

关于c# - 如何从JSON格式的DataSet中提取DataTable,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23079067/

相关文章:

c# - 如何检测 MySql 查询是否成功并输出消息?

javascript - 如何在javascript中检测Dolphin浏览器?

javascript - 如何从文本区域输入创建 $_POST 数组

javascript - 页面内样式标签内的 CSS 加载,但不从外部样式表加载

javascript - 将调色板添加到 ASP.NET 文本框

javascript - jQuery scrollTop(val) 在页面刷新时不起作用

c# - 将内容拆分为页面 MVC 4 Razor

c# - WCF 的独立应用程序

c# - 枚举程序集的所有已安装版本(在 GAC 中)

javascript - 如何加载特定模板的 Three.js