0

パブリック IEnumerable オブジェクトを公開する asp.net ユーザー コントロールがあります。質問への回答に役立つ場合は、これをリストまたは配列に変換できます。私がやりたいことは、javascript 関数内のすべてのサーバー オブジェクトをループして、各項目の内容を処理することです。可能であれば、インライン サーバー タグを使用してこれを実現したいと考えています。以下のようなもの。

function iterateServerCollection()
{
    foreach(<%=PublicCollection %>)
    {
        var somevalue = <%=PublicCollection.Current.SomeValue %>;
    }
}

これを達成することは可能ですか?

4

2 に答える 2

1

geedubb からのコメントのおかげで、私が望んでいたことを達成することができました。動作中の JavaScript は次のようになります。

var myCollection = <%= new System.Web.Script.Serialization.JavaScriptSerializer().Serialize(myCollection) %>;

for(var i in myCollection)
{
    var somevalue = myCollection[i].SomeValue;
}
于 2013-09-25T10:42:23.897 に答える
0

他の人が提案したように、オブジェクトをシリアル化します.ajax呼び出しを使用して、その関数の最初からデータを取得することもできます

function iterateServerCollection()
{

    //Ajax call to get data from server HttpHandler/WebAPI/Service etc.

    for(var item in resultObject) {
        //you can use item.WhateverPropertyIsOnObject
    }
}
于 2013-09-25T09:17:34.853 に答える