我一直在尝试获得一个独立的网页,我使用它重建为可以在我的博客中访问的页面。根据建议,我为这个页面创建了一个新模板,并在那里完成了我的所有工作。
页面正确地记住了$_会话,php运行良好。在此页面上有下拉框,用于更新其他下拉框。
如果我手动更新,一切都会很好。当我尝试引入我的ajax调用时,事情变得不稳定。目前正在更新。php只是回应“你好”。
<script>
function changeFn( ) {
var newOpt = document.createElement(\'option\');
var oldSel = document.getElementById(\'slight\');
while ( oldSel.length > 0 )
oldSel.remove(oldSel.options.length-1);
var ajaxRequest;
alert("start req"); // I observe this alert
try {
// Opera 8.0+, Firefox, Safari
ajaxRequest = new XMLHttpRequest();
} catch (e) {
try {
// Internet Explorer Browsers
ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {
// Something went wrong
alert("Your browser isn\'t supporting XML HTTP requests.");
return false;
}
}
}
// Create a function that will receive data sent from the server
ajaxRequest.onreadystatechange = function () {
alert("state change: "+ajaxRequest.readyState); // I never observe this
if (ajaxRequest.readyState == 4) {
if (ajaxRequest.status == 200) {
alert(ajaxRequest.responseText);
//extract( ajaxRequest.responseText, "one" );
} else {
alert("There was an error retriving the data");
}
}
}
alert("trying"); // I observe this alert
var url = "http://myurl/update.php";
var params = "CID="+classID+"&GID="+genreID;
ajaxRequest.open("POST", url, true);
ajaxRequest.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
ajaxRequest.setRequestHeader("Content-length", params.length);
ajaxRequest.setRequestHeader("Connection", "close");
ajaxRequest.send(params);
alert(" hi"); // I never see this alert
newOpt.text="got this far";
newOpt.value= -1;
document.getElementById("slight").add(newOpt, null);
return true;
}
</script>
一些警报会触发,但与回调函数关联的警报不会触发。PS我并没有试图访问任何特定于wordpress网站本身的内容,我正在访问一个完全不同的数据库。