2012-02-19 53 views

回答

2

如果您正在使用:remote => true,您實際上正在執行Ajax請求。在這種情況下,閃光燈將不起作用。

你需要的是有一個模仿閃光消息的js函數。

我通常有:(Mootools的,但你可能得到的想法)

showMessage: function(message, style, addReload) 
    { 
     var class_name = style + "_message message"; 

     var flash = $("flash_message"); 

     if (flash) { 
      flash.dispose(); 
     } 

     flashElement = new Element("div", { 
      id: 'flash_message' 
     }); 
     flashElement.set('class', class_name); 

     var strong = new Element('strong', { 
           html: message 
           }); 

     if(addReload) 
     { 
      strong.adopt(
          new Element("a", {href: window.location, html: 'Reload'}) 
         ); 
     } 

     flashElement.adopt(
          strong 
         ); 


     flashElement.inject($("mainPageContainer")); 
     Site.show_message(); 
    }, 

每當我使用:遠程=>真實的,我有一個在js視圖

<% flash.discard %> 
Dashboard.showMessage('Comment added and was sent to clients', 'notice');