Я немного запутался, что я делаю неправильно в моем кодеAJAX ошибка «setRequestHeader» не определен
function submitArticle() {
var postTitle = encodeURIComponent(document.getElementById('postTitle').value);
var postDes = encodeURIComponent(document.getElementById('postDes').value);
var postCont = encodeURIComponent(document.getElementById('postCont').value);
var data = "postTitle=" + postTitle + "&postDes=" + postDes + "&postCont=" + postDes;
var getXML = function() {
try {
xhr = new XMLHttpRequest();
}
catch(e) {
try {
xhr = new ActiveXObject("Microsoft.XMLHTTP");
}
catch(e) {
try {
xhr = new ActiveXObject("Msxml2.XMLHTTP");
}
catch(e) {
alert("Your Browser is not Supported");
}
}
}
}
open('POST', 'http://localhost/blog/engine/engine.php', true);
setRequestHeader("Content-type", "application/x-www-form-urlencoded");
send(data);
getXML.onreadystatechange = function() {
if(this.readyState === 4) {
if(this.status ===200) {
alert(this.responseText);
}
else {
alert("status" + this.status);
}
}
else {
alert("readyState" + this.readyState);
}
}
getXML();
return true;
}
Я использую событие OnClick для этого. Я проверил URL-адрес и убедился, что я не делал ошибок при вводе значений переменных. Я получаю ошибку «setRequestHeader is not defined» вместе с новыми окнами, которые показывают ссылку «localhost/blog/app/POST»
Я искал столько, сколько мог, и я не уверен, что делать дальше ,
Также. должен быть лучший способ написать код, чем то, что я сделал для функции getXML().
Если у вас так мало понимания JavaScript, что вы пытаетесь вызвать методы объекта без каких-либо ссылок на реальный объект, то вы должны, может быть, лучше нам библиотеку как JQuery, который обрабатывает все эти вещи довольно хорошо для вас ... – CBroe
же точная проблема, как в http://stackoverflow.com/questions/19275333/which-methods-are-executed-first-in-an-ajax-call, о которой я вам говорил. :) – epascarello
Спасибо @epascarello Мне удалось получить все, что работает сейчас. – Bazinga777