0

私はこのメソッドを使用するように任命されました。率直に言って、idはこのサーバー側を2秒で実行できますが、すべてjavascriptで実行する必要があります。

そこで、S_TeamMemberというオブジェクトで返されたDBからバイナリイメージを取得する必要があります。プロパティの1つはMainImgbyte[]です。

JSONを使用してashxハンドラーを呼び出し、DBを呼び出してデータを取得します。

    $(function () {
    var queryparam = getUrlVars()["CatLink"];

    $.ajax({
        url: "TeamGroups.ashx",
        data: { CatLink:  queryparam },
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: OnTeamGroupsCompleted,
        error: OnPageFailM
    });
});

上記のJSON呼び出し

     function OnTeamGroupsCompleted(result) {
    for (var i = 0; i < result.length; i++) {

        var name = result[i].Name;
        var recno = result[i].Recno;
        var mainimg = result[1].MainImg;
        var memholder = "<div class='PersonImageHolder'>" +
            "<div class='PersonImage'>" +
                "<img src='"+ mainimg +"'/>" + <------ PROBLEM IS HERE
            "</div>" +
            "<div class='PersonNameHolder inline-block'>" +
        "<div class='ImgHolderL inline-block'>" +
            "<img src='images/web/WhiteRibbonL.png' />" +
            "</div>" +
            "<div class='NameHolder inline-block'>" +
            "<p><a href='MemberDetail.aspx?TeammMemberLink="+ recno +"'>"+ name +"</a></p>" +
            "</div>" +
            "<div class='ImgHolderR inline-block'>" +
            "<img src='images/web/WhiteRibbonR.png' />" +
            "</div>" +
            "</div>" +
            "</div>";

        $('.Content').append(memholder);

    }
}

次に、JSONの結果を反復処理して、画像を含むページにdivを描画する方法を示します。問題は、「MainImg」バイナリデータをhtml画像タグに解析することです。

私がこれを行う方法について何かアイデアはありますか?

どんな助けでも大歓迎です

4

2 に答える 2

1

OnTeamGroupsCompleted の result[i].MainImg の値は何ですか? JSON 形式は、ネイティブではバイナリ データをサポートしていません。あなたはできる:

  1. 新しいashxを書く
  2. URL に名前または ID を渡す
  3. ashx を img src に設定します
  4. in ashx 出力イメージ バイナリ データ

JavaScriptで:

"<img src='image.ashx?name"+ result[i].Name +"'/>" + <------ PROBLEM IS HERE

image.ashx:

public void ProcessRequest(HttpContext context)
{
    string name = context.Request.QueryString["name"];
    //query database by name to get image binary data
    Byte[] bytes = ...;
    context.Response.ContentType = "image/png";
    context.Response.BinaryWrite(bytes);
}
于 2012-09-14T12:19:14.327 に答える
0

javascriptを使って実行できるとは思いません!ただし、代わりに、画像のURLをDBに保存して、ブラウザに返すことができます。

于 2012-09-14T11:46:28.553 に答える