function runAjax(val, url, metod) {правильно ли в такой ситуации написать вот так?
req.onreadystatechange = function () {
if (req.readyState==4) {
if (req.status==200) document.getElementById('page').innerHTML=req.responseText;
else alert("не пашет...\n" +req.statusText + "\n" + req.responseText);
}
}
if (metod=='GET') getRequest(val, url, metod);
else if (metod=='POST') postRequest(val, url, metod);
}
function runAjax(val, url, metod) {или вообще взять да и написать прототип
req.onreadystatechange = readychange();
if (metod=='GET') getRequest(val, url, metod);
else if (metod=='POST') postRequest(val, url, metod);
}
function readychange() {
if (req.readyState==4) {
if (req.status==200) document.getElementById('page').innerHTML=req.responseText;
else alert("не пашет...\n" +req.statusText + "\n" + req.responseText);
}
}
function runAjax(val, url, metod) {
if (metod=='GET') getRequest(val, url, metod);
else if (metod=='POST') postRequest(val, url, metod);
}
runAjax.prototype.req.onreadystatechange = function () {
if (req.readyState==4) {
if (req.status==200) document.getElementById('page').innerHTML=req.responseText;
else alert("не пашет...\n" +req.statusText + "\n" + req.responseText);
}
}
Спустя 2 часа, 27 минут, 47 секунд (12.03.2010 - 18:37) glock18 написал(а):
qpayct
во втором листинге имя функции нужно без скобок.
разумеется, использовать прототипы правильнее. в указанной статье это написано достаточно понятно. плюс ко всему там описан весьма изящный способ объявления прототипа (класса), который я возьму на вооружение. спасибо за статью
правда листинг с объявление прототипа оставляет у меня большие сомнения в его работоспособности. возможно, он просто продемонстрирован неудачно.
во втором листинге имя функции нужно без скобок.
разумеется, использовать прототипы правильнее. в указанной статье это написано достаточно понятно. плюс ко всему там описан весьма изящный способ объявления прототипа (класса), который я возьму на вооружение. спасибо за статью
правда листинг с объявление прототипа оставляет у меня большие сомнения в его работоспособности. возможно, он просто продемонстрирован неудачно.
Спустя 20 минут, 51 секунда (12.03.2010 - 18:58) qpayct написал(а):
Цитата (glock18 @ 12.03.2010 - 17:37) |
правда листинг с объявление прототипа оставляет у меня большие сомнения в его работоспособности. возможно, он просто продемонстрирован неудачно. |
так я пока не проверял. хотел посоветоватся сначала правильно ли вообще так применять прототип
Спустя 1 час, 31 минута (12.03.2010 - 20:29) glock18 написал(а):
qpayct
применять - правильно
применять так - я уже высказал сомнения я о том, собственно, что нужно как минимум объявить свойство runAjax.prototype.req прежде, чем вешать свойства ему.
применять - правильно
применять так - я уже высказал сомнения я о том, собственно, что нужно как минимум объявить свойство runAjax.prototype.req прежде, чем вешать свойства ему.
Спустя 34 минуты, 34 секунды (12.03.2010 - 21:03) qpayct написал(а):
а это моя промашка в полном коде всё обьявлено
но оба не работают.... это потому, что для этого походу надо каждый раз новый обьект создавать, а не ссылку на него короче первое единственное правильное
var req = reqObject();но не работает... увы.
но оба не работают.... это потому, что для этого походу надо каждый раз новый обьект создавать, а не ссылку на него короче первое единственное правильное