0

私は JavaScript と AJAX の完全な初心者です。AJAX を使用してサーバーを呼び出し、返された HTML を表示しようとしています。ただし、ブラウザは HTML をレンダリングする代わりに、HTML コードを表示します。私は JQuery を使用しておらず、使用したくないです (時間の深刻な不足と、JQuery に完全に慣れていないことが、基本的な JavaScript に固執する 2 つの主な理由です)。基本的な JavaScript のみを使用することになっているため、HTML をレンダリングする方法はありますか。これが私のコードです

function gotoNext(button){
try {
    xmlHttp = new XMLHttpRequest ();
}
catch (e) {
    try {
        xmlHttp = new ActiveXObject ("Microsoft.XMLHTTP");
    }
    catch (el) {
        try {
            xmlHttp = new ActiveXObject ("Msxml2.XMLHTTP");
        }
        catch (el1) {
            alert ("Your browser does not support AJAX! Please use a compatible browser!!");
        }
    }
}

xmlHttp.onreadystatechange = function () {
    if (xmlHttp.readyState == 4 && xmlHttp.status == 200) {
        var df = document.getElementById ("dataForm");
        var data = xmlHttp.responseText;
        df.innerText = data;
    }       
};

var id = document.editEnv.id.value;
var sId = document.editEnv.sId.value;
var fileName = document.editEnv.fileName.value;
var group = document.editEnv.group.value;

xmlHttp.open("POST", "newData.jsp", true);
xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;");
xmlHttp.send ("flag=" + flag + "&id=" + id + "&sId=" + sId + "&fileName=" + fileName + "&group=" + group);
4

3 に答える 3

3

使用する必要がありますdf.innerHTML = data;

innerText値をプレーンテキストとして取得/設定するだけです。

于 2013-04-14T09:09:16.093 に答える
2

innerTextで置き換えることができますinnerHTML違いは、innerTextHTML タグが含まれていないのに対し、含まれているという事実にありinnerHTMLます。例えば

Here is a <a href="what.html">link</a>

表示されます:

Here is a link

あなたがそれを呼び出す場合innerText。ただし、それを呼び出すと、次のようinnerHTMLに表示されます。

Here is a <a href="what.html">link</a>
于 2013-04-14T09:09:26.467 に答える
0
df.innerHTML = data;

動作するはずです!! innerHTML を使用すると、ブラウザでその html がレンダリングされるためです。

innerText は、HTML コードを通常のテキストとして表示するだけです。

于 2013-04-14T09:14:40.133 に答える