i am not sure but setting the header in the view might not work, better so set it in the contoller otherwise the page is already sumitted before you set the header
On Oct 31, 3:00 am, Luther Goh Lu Feng <[email protected]> wrote: > I wish to run a script after a component is ajax loaded. To achieve > that, I attempted to set the web2py-component-command as follows: > > ====================== > <!-- Reload comments component at regular intervals--> > comment_component = function(){ > t = $('#comment_text__row textarea').val(); > {{response.headers['web2py-component-command']="console.log('yay')"}} > web2py_component('/roverus/comment/create.load?current_conversation=' > + current_conversation,'conversation');} > > setInterval("comment_component()", 5000); > > ====================== > > However "console.log('yay')" does not run. > > I also set web2py-component-command in the related function as > follows: > > ========================== > function web2py_ajax_page(method,action,data,target) { > {{response.headers['web2py-component- > command']="console.log('yay2')"}} <---------------------added line > jQuery.ajax({'type':method,'url':action,'data':data, > 'beforeSend':function(xhr) { > xhr.setRequestHeader('web2py-component- > location',document.location); > xhr.setRequestHeader('web2py-component-element',target);}, > 'complete':function(xhr,text){ > var html=xhr.responseText; > var content=xhr.getResponseHeader('web2py-component-content'); > var command=xhr.getResponseHeader('web2py-component-command'); > var flash=xhr.getResponseHeader('web2py-component-flash'); > var t = jQuery('#'+target); > if(content=='prepend') t.prepend(html); > else if(content=='append') t.append(html); > else if(content!='hide') t.html(html); > web2py_trap_form(action,target); > web2py_ajax_init(); > if(command) eval(command); > if(flash) jQuery('.flash').html(flash).slideDown(); > } > }); > > } > > ====================== > > This too does not work. > > Can anyone enlighten me if I misunderstood the syntax, or is there > another way I can get this working? Thanks in advance.

