2011-10-21 8 views
0

私はdivにhtml文字列を挿入しようとしていますが、問題があります。私が渡すcsharpメソッドからの戻り値は、divに何が表示されているかではありません。.ajax html inject

"<table><tr><th>Color</th><th>Range</th></tr><tr><td><div class='divColorSwatch' style='background-color:#D3D3D3;'></div></td> <td> <div class='divColorLabel''>0 To 4.9999</div></td></tr><tr><td><div class='divColorSwatch' style='background-color:#FFC8C8;'></div></td> <td> <div class='divColorLabel''>5 To 9.9999</div></td></tr><tr><td><div class='divColorSwatch' style='background-color:#FF9696;'></div></td> <td> <div class='divColorLabel''>10 To 14.9999</div></td></tr><tr><td><div class='divColorSwatch' style='background-color:#FF6464;'></div></td> <td> <div class='divColorLabel''>15 To 19.9999</div></td></tr><tr><td><div class='divColorSwatch' style='background-color:#FF3232;'></div></td> <td> <div class='divColorLabel''>20 To 24.9999</div></td></tr><tr><td><div class='divColorSwatch' style='background-color:#FF0000;'></div></td> <td> <div class='divColorLabel''>25 To 100</div></td></tr></table>" 

CシャープのWebメソッドから返さ

JavaScriptの機能...

$.ajax({ 
    type: "POST", 
    url: "MainPage.aspx/mapBuildLegend", 
    data: dataOut, 
    contentType: "application/json; charset=utf-8", 
    dataType: "text", 
    success: function (text) { $('#divLegend').html(text); }, 
    error: function() { alert('Could Not Load Legend!'); } 
}); 

文字列は、私のdivで終わる何...

{"d":"\u003ctable\u003e\u003ctr\u003e\u003cth\u003eColor\u003c/th\u003e\u003cth\u003eRange\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cdiv class=\u0027divColorSwatch\u0027 style=\u0027background-color:#D3D3D3;\u0027\u003e\u003c/div\u003e\u003c/td\u003e \u003ctd\u003e \u003cdiv class=\u0027divColorLabel\u0027\u0027\u003e0 To 4.9999\u003c/div\u003e\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cdiv class=\u0027divColorSwatch\u0027 style=\u0027background-color:#FFC8C8;\u0027\u003e\u003c/div\u003e\u003c/td\u003e \u003ctd\u003e \u003cdiv class=\u0027divColorLabel\u0027\u0027\u003e5 To 9.9999\u003c/div\u003e\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cdiv class=\u0027divColorSwatch\u0027 style=\u0027background-color:#FF9696;\u0027\u003e\u003c/div\u003e\u003c/td\u003e \u003ctd\u003e \u003cdiv class=\u0027divColorLabel\u0027\u0027\u003e10 To 14.9999\u003c/div\u003e\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cdiv class=\u0027divColorSwatch\u0027 style=\u0027background-color:#FF6464;\u0027\u003e\u003c/div\u003e\u003c/td\u003e \u003ctd\u003e \u003cdiv class=\u0027divColorLabel\u0027\u0027\u003e15 To 19.9999\u003c/div\u003e\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cdiv class=\u0027divColorSwatch\u0027 style=\u0027background-color:#FF3232;\u0027\u003e\u003c/div\u003e\u003c/td\u003e \u003ctd\u003e \u003cdiv class=\u0027divColorLabel\u0027\u0027\u003e20 To 24.9999\u003c/div\u003e\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e\u003cdiv class=\u0027divColorSwatch\u0027 style=\u0027background-color:#FF0000;\u0027\u003e\u003c/div\u003e\u003c/td\u003e \u003ctd\u003e \u003cdiv class=\u0027divColorLabel\u0027\u0027\u003e25 To 100\u003c/div\u003e\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e"} 

はどのいただき、ありがとうございますヘルプ、

Eric

答えて

1

JSONを返すように見えます。それが動作しない場合は、あなただけの最初のJSONオブジェクトに返されたテキストを変換する必要があり

$('#divLegend').html(text.d); 

UPDATE

をお試しください:

var jText = JSON.parse(text); 
$('#divLegend').html(jText.d); 
+0

いいえ、私はそれを試しても何も戻ってこない。戻り値の型としてテキストの代わりにhtmlを使用していない場合... – eshepard

+0

更新 - 返された文字列を認識されたJSONに変換するだけです –

0

textオブジェクトあなたの成功に関数は実際にコレクションです。 div3にdオブジェクトのコンテンツを入れてみてください。すなわち:

success: function (text) { $('#divLegend').html(text.d);