2013-09-26 41 views
1

我在我的​​文件中添加了一條路徑來處理表單提交,我使用express-validator middleware進行驗證。現在取決於驗證,我想將用戶重定向到同一個聯繫頁面,但在驗證成功時顯示成功消息(這裏我將發送一封電子郵件),或者顯示錯誤消息。Docpad:在聯繫表單上顯示錯誤/成功消息

我沒有設法將驗證消息傳遞給模板來顯示它。我嘗試了幾乎所有的組合dynamic: true/false,res.locals = validationMessages,res.sessions = validationMessages,res.templateData = validationMessages沒有成功。

此外,添加dynamic: true使內容的更改完全不出現,無論使用哪種刷新策略(私有模式,清理緩存,重新啓動Docpad,不使用緩存刷新等)。我應該很可能提出一個關於它的錯誤。

如何?

我使用Docpad 6.53.0(最晚日期),節點0.10.15,在OS X 10.8.4

回答

2

我通過附加一個哈希重定向URL在這一個騙一個位(例如, :「www.mywebsite.com/#messagesent」)。然後,我使用客戶端JavaScript讀取散列,然後顯示相應的消息。事情是這樣的:

if (location.hash == "#messagesent") { 
    $('#message-sent').show(); 
    setTimeout(function() { 
     $('#message-sent').fadeOut(1000); 
    }, 1000); 
} 

不太什麼你問的雖然:)

+0

一種解決方法,但不使用JavaScript停用工作。無論如何,如果我沒有設法在服務器端做到這一點,我會嘗試。 – DjebbZ

+0

我認爲你應該可以在服務器端做同樣的事情 - 即查看URL /請求的散列。 –

相關問題