0

クライアント側で JSON データを RadioButtonList にバインドしようとしています。コードビハインドの方法を知っています。正常に動作します。誰かが詳細を提供してください.VB.NETでJSONデータRadioButtionListをバインドするにはどうすればよいですか.

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

データは次のようになります。[regions:{regionID:US,regionName:USA}]

main.aspx

<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。そのため、jQuery セレクターとして ID の代わりにクラス名を使用することをお勧めします。

jsonlintは、JSON を検証するための優れたツールです。

于 2012-06-10T22:53:42.110 に答える