このコードでhtmlを文字列として返すサービスへのajax呼び出しを行っています..
var xhReq = new XMLHttpRequest();
xhReq.open("POST", "MobileClientService.svc/REST/TestHtmlSend", false);
xhReq.send(null);
xhReq.responseType = "text/html";
var serverResponse = xhReq.responseText;
alert(serverResponse); // Shows "15"
サービスは html を正しく作成します。
<div data-bb-type="item" data-bb-img="Images/imagesBBUI/icons/icon11.png" data-bb-title="Title From Server">
</div>
問題は、コードの「serverResponse」がこれを返すことです..
<div data-bb-type=\"item\" data-bb-img=\"Images/imagesBBUI/icons/icon11.png\" data-bb-title=\"Title From Server\">
\u000d\u000a\u000d\u000a
<\/div>
html の作成に使用する C# コードを次に示します。
public string TestHtmlSend()
{
string moomoo = String.Empty;
// Initialize StringWriter instance.
StringWriter stringWriter = new StringWriter();
// Put HtmlTextWriter in using block because it needs to call Dispose.
using (HtmlTextWriter writer = new HtmlTextWriter(stringWriter))
{
//start collapse div
writer.AddAttribute("data-bb-type", "item");
writer.AddAttribute("data-bb-img", "Images/imagesBBUI/icons/icon11.png");
writer.AddAttribute("data-bb-title", "Title From Server");
writer.RenderBeginTag(HtmlTextWriterTag.Div);
//writer.Write("Some Whatever Description");
writer.RenderEndTag();
}
moomoo = stringWriter.ToString();
コードを変更して、余分な "\" なしで HTML をそのまま返すにはどうすればよいですか?