Mam dosyć specyficzny problem, ale moze rozpoczne najpierw od kodu. ponizej znajduje sie moja deklaracja klasy javascript do cyklicznego wywolywania wysylki kolejnej porcji newsletter'a (gro logiki po stronie serwera):
dojo.require("dojox.timing._base");
/*
klasa js do obslugi procesu wysylania maili
*/
function jobProcess (/* string */ link, /* htmlelement id*/button) {
this.link=link;
this.buttonID=button;
this.pbh=null;
this.timer= null;
this.load= function (response,ioArgs){
dojo.byId('result_send_count').innerHTML=response.sent_count;
dojo.byId('result_send_total').innerHTML=response.total;
dojo.byId('result_send_adresy').innerHTML=response.adresy;
dojo.byId('result_progressbar').style.width=response.percentage + '%';
dojo.byId('result_progressbar').innerHTML=response.percentage + '%';
dojo.byId('wrapper_wysylki').style.display='block';
}
this.start= function (){
if (this.timer == null){
this.timer=new dojox.timing.Timer();
this.timer.onTick=function(){
dojo.xhrPost( {
url: this.link,
handleAs: "json",
load: this.load
});
}
}
this.timer.start();
dojo.byId(this.buttonID).value='Zatrzymaj';
dojo.byId(this.buttonID).onclick=this.stop;
}
this.stop= function (){
this.timer.stop();
dojo.byId(this.buttonID).value='Wznów';
dojo.byId(this.buttonID).onclick=this.start;
}
dojo.byId(this.buttonID).onclick=this.start;
}
wywoluje co okreslony czas url ktory procesuje porcje adresow i zwraca co wyslal i jaki jest aktualny stan zeby uaktualnic interfejs. dojo jednak wywala mi sie na linii
dojo.byId(this.buttonID).value='Zatrzymaj';
w momencie klikniecia na button aby uruchomic akcje, wywalajac komunikat bledu "this.buttonID is Undefined". klase inicjalizuje za pomoca wpisu:
<script language="javascript"> dojo.addOnLoad(function(){
var wysylka_newsletter= new jobProcess('/newsletter/admin/processjob/id/2','wysylka');
});
ktory znajduje sie w kodzie wygenerowanej strony zaraz po definicji button'a. bylbym wdzieczny za pomoc, stawiam dopiero pierwsze kroki w oop javascript i nie znam niuansow które pewnie znaja osoby przegladajace to forum.
Pozdrawiam