2

XMLHttpRequest() を使用して、サーバーから C ソース コードを取得しました。

return HttpResponse(code, mimetype='text/x-c')

alert(code) を使用して確認したところ、正しいソース コードが得られました。

このような

enter code here
#include<stdio.h>
int main(){
    .....
}

そして、JavaScriptで各行に分割しました。

var arr = code.split('\n');
window.document.getElementById("id").innerHTML = arr;

結果はこのようなものです。

#include
,int main(){
,    ....
,}

理由がわかり<stdio.h> ません....「<」のせいではないと思います。forループで、「<」文字を見つけることができます。

どうしたの?

4

2 に答える 2

4

それは「<」文字です。

HTMLを設定しています。すべてのブラウザは、'<' と '>' の間のものを解析します。あなたの場合、DOM要素「stdio.h」と思われるものを見つけています。ブラウザーはそれをどう処理するかを認識していないため、レンダリングする代わりに無視します。

受け取った文字列を適切にエスケープする方法については、Javascript で特殊文字を HTML に変換するを参照してください。

于 2013-09-26T03:48:48.407 に答える