Тема: AJAX запросы
Здравствуйте все.
Стыдно признать, но никогда ранее не пробовал писать асинхронные запросы, но некоторое время назад стали нужны.
Вроде бы как ничего и сложного, но на грабли уже пару раз наступал. Вот сейчас опять. Гуглить уже не получается.
Вот 2 кода. Какой правильный (если таковой имеется)?
url1 = "http://"; url2 = "http://"; param1="300"; param2="400";
xmlhttp = new XMLHttpRequest();
SendRequestPOST(url1, param1, Request1);
SendRequestPOST(url2, param2, Request2);
function Request1() {
if (xmlhttp.readyState === 4) {
if (xmlhttp.status === 200) {
alert("1 запрос отработал");
}
}
}
function Request2() {
if (xmlhttp.readyState === 4) {
if (xmlhttp.status === 200) {
alert("2 запрос отработал");
}
}
}
function SendRequestPOST(url, parameter, func) {
xmlhttp.open("POST", url, true);
xmlhttp.onreadystatechange = func;
xmlhttp.setRequestHeader("Content-type", "application\/x-www-form-urlencoded");
xmlhttp.overrideMimeType("text/html;charset=windows-1251");
xmlhttp.send(parameter);
}
и
url1 = "http://"; url2 = "http://"; param1="300"; param2="400";
xmlhttp = new XMLHttpRequest();
xmlhttp.open("POST", url1, true);
xmlhttp.onreadystatechange = Request1;
xmlhttp.setRequestHeader("Content-type", "application\/x-www-form-urlencoded");
xmlhttp.overrideMimeType("text/html;charset=windows-1251");
xmlhttp.send(param1);
xmlhttp2 = new XMLHttpRequest();
xmlhttp2.open("POST", url2, true);
xmlhttp2.onreadystatechange = Request2;
xmlhttp2.setRequestHeader("Content-type", "application\/x-www-form-urlencoded");
xmlhttp2.overrideMimeType("text/html;charset=windows-1251");
xmlhttp2.send(param2);
function Request1() {
if (xmlhttp.readyState === 4) {
if (xmlhttp.status === 200) {
alert("1 запрос отработал");
}
}
}
function Request2() {
if (xmlhttp2.readyState === 4) {
if (xmlhttp2.status === 200) {
alert("2 запрос отработал");
}
}
}
Вопрос такой: При многократных запросах, достаточно создать объект (чmlhttp = new XMLHttpRequest()) один раз или создавать всегда новый? (xmlhttp1, xmlhttp2, xmlhttp3...)