私はたくさんのデモと AJAX と JavaScript のチュートリアルを見てきましたが、これを正しく動作させることができないようです。これが私が持っているものです...
function createRequestObject() {
var ro = false;
if (window.XMLHttpRequest) { // Mozilla, Safari, ...
ro = new XMLHttpRequest();
} else if (window.ActiveXObject) { // IE
try {
ro = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
ro = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) { }
}
}
return ro;
}
function ajaxrequest(){
var http = createRequestObject();
if(http) {
var name = "Strassburg";
var message = "Strike three you're out";
http.open('post', '/server/shout.php');
// needed in order for most servers to see POST data
http.setRequestHeader('Content-Type',
'application/x-www-form-urlencoded');
http.onreadystatechange = function() {
if(http.readyState == 4){
if(http.responseText.indexOf(':' != -1)) {
var data = http.responseText.split(':')
alert(data)
}
}
};
http.send('name=' + name + '&message=' + message);
}
}
現在、静的テキスト (ユーザーが入力したフィールドを使用する代わりに名前とメッセージ) を使用していますが、空のアラートが表示されます。readyState が 4 に設定されている場合、これは ajax 呼び出しが成功したことを意味します。これserver/shout.php
は私に与えられたもので、php をよく理解していませんが、その断片が必要な場合は、ここにも置くことができます。