javascript - Handling asynchronous response in JS - limited access to JS files that can be edited -


i modifying third party - web client application in have access js files. search function limited search in 1 given server node @ time, , work around, hardcoded server nodes , created loop, invoking "search" several times, @ different nodes.

the server response (in form of form - without getters) automatically handled callback, renders view of form. means able display last response , displaying 1 set of result.

to handle this, added $trs = $(tr).clone(true) on callback function, saving rows previous forms , - made last loop "search" have callback - append collected rows $tr , display last form complete results nodes.

but result inconsistent. displays result 1 server node. think caused delay in server response caused form render last. tried put delay settimeout function, keeps me getting result @ all

i new web programming - js , jquery both (well css , html lol) , ask suggestions on better way handle this.

thank you!

 _handleconfigsubmit: function (form, error) {         //alert("_handleconfigsubmit");          if (form) {             var formview = new jabberwerx.ui.xdataformview(form);                             var = this;               formview.event("xdataitemselected").bind(function(evt) {                  that.jq.find(".muc_search_button_join").removeattr("disabled");                  var resulttable = that.jq.find(".muc_search_results table.result_table");                 resulttable.find("tr.selected").removeclass("selected");                  that._selecteditem = evt.data.selected;                 resulttable.find("tr#"+evt.data.selected._guid).addclass("selected");             });             var searchresultsdiv = jabberwerx.$(".muc_search_results", this.jq);            searchresultsdiv.empty();             this.update();             var dim = {                 width: searchresultsdiv.width(),                 height: searchresultsdiv.height()             };             formview.render().appendto(searchresultsdiv);             formview.dimensions(dim);              $trs = $("table.result_table tbody>tr:not(:first)").clone(true);             if ($trlist!=null){                 $trlist = $trlist.add($trs);             }else{                 $trlist = $trs;             }              $("table.result_table tbody>tr:not(:first)").remove()              if (ctr<=3){                 $("table.result_table tbody").append($trlist);             }else{                 ctr++;             }           } else {             this._showerror(error);         }     } 


Comments

Popular posts from this blog

linux - xterm copying to CLIPBOARD using copy-selection causes automatic updating of CLIPBOARD upon mouse selection -

qt - Errors in generated MOC files for QT5 from cmake -