0

我正在尝试将 JSON 数据绑定到客户端的 RadioButtonList 中。我知道如何做后面的代码,它工作正常。有人请提供更多详细信息,如何在 VB.NET 中绑定 JSON 数据 RadioButtionList。

rblregions.DataTextField = "Value"
rblregions.DataValueField = "Key"
rblregions.DataSource = items

数据如下:[regions:{regionID:US,regionName:USA}]

主文件

<asp:RadioButtonList ID="rblregions" runat="server">

$.getJSON("Map/loadMySites.aspx?" + query,
    function (data) {
        if (data.regionid && data.region) {
            //I want to bind the data here with RadioButtonList
        }

    }
);
4

1 回答 1

2

VB.NET 是服务器端。你不能用 VB.NET 做客户端。你应该用javascript来做。

单选按钮列表的 ASP.NET 标记通常会生成一个 HTML 表格。让我们假设它是这样的

<table id="rblregions"><tbody></tbody></table>

假设你JSON从你的服务器页面得到这样的,

{
    "regions": [
        { "regionID": "US", "regionName": "USA" },
        { "regionID": "UK", "regionName": "United Kingdom" }
    ]
}

你可以这样做

$.getJSON("Map/loadMySites.aspx?" + query,function(data){
    var rows="";
    $.each(data.regions,function(index,item){
        rows+="<tr><td>"+item.regionName+"</td></tr>";
    });    
    $("#rblregions> tbody:last").append(rows);    
});

这是一个 jsfiddle 示例http://jsfiddle.net/LM6fF/10/

如果您的单选按钮列表在另一个 asp.net 容器元素(前面板)内,则元素的 ID 将不像rblregions. 所以我建议你使用类名而不是 ID 作为 jQuery 选择器。

jsonlint是一个很好的工具来验证你的 JSON。

于 2012-06-10T22:53:42.110 回答