JS コードでXmlHTTPRequestを使用する必要があります。
回答を取得するためのコールバックを割り当て、必要に応じて処理します。私の場合、出力するコードをサーバーから取得していましたが、すべての入力を含むフォームは以前の状態のままで、html ページの div 'output' のみが変更されました。
これが私のプログラムの短い例です: ページの html
<script type="text/javascript" src="./js/script.js">/script>
<form name="someForm">
<p><b>Enter your text here:</b></p>`
<p><textarea rows="10" cols="45" name="code"></textarea></p>
<input type="button" value="Send it" onclick="sendIt()"/>
</form> </code>
<div id="output"></div>
私の場合、script.js はページの一部のみを更新します
function sendIt() {
var theCode = document.codeHolderForm.code.value;
var linkToDiv = document.getElementById("output");
linkToDiv.innerHTML = 'p> Server response below: p>';
var request = getXmlHttp();
request.open("POST", "/", true);
request.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
request.onreadystatechange = function () {
if (request.readyState != 4) return;
if (request.status == 200) {
linkToDiv.innerHTML += 'p>' + request.responseText + '/p>';
} else {
handleError(request.statusText);
}
};
request.send("code=" + theCode);
}
function handleError(message) {
alert("Error: "+message)
}
function getXmlHttp() {
var xmlhttp;
try {
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch (E) {
xmlhttp = false;
}
}
if (!xmlhttp && typeof XMLHttpRequest != 'undefined') {
xmlhttp = new XMLHttpRequest();
}
return xmlhttp;
}