2013-08-26 26 views
5

Tôi có 3 biểu mẫu trên một chế độ xem, khi được gửi, thêm mục nhập mới trong cơ sở dữ liệu mysql. Tôi muốn gửi thông báo cho biết "Bạn đã thêm thành công X" bất cứ khi nào một mục nhập được thêm vào mà không cần điều hướng từ trang.Express.js - Gửi cảnh báo làm phản hồi khi ở trên cùng một trang

// Form to be Submitted 
<form method="post" action="route/action/"> 
    <input type="text" name="name"> 
</form> 


// Route 
exports.action = function (req, res) { 

    client.query(); 

    // What kind of response to send? 
} 

Tôi làm cách nào để gửi cảnh báo? Tôi nên gửi phản hồi như thế nào?

Cảm ơn bạn!

+0

bạn chỉ có thể gửi thư chấp thuận thông qua ajax, gửi một phản ứng JSON và hiển thị các cảnh báo dựa trên dữ liệu. Hoặc, vì bạn đang sử dụng nút, bạn có thể muốn xem http://socket.io/ ... –

+1

Gửi các biến qua ajax (jQuery) và trả về một res.json (true) và trong hàm SUCCESS bật cảnh báo? –

Trả lời

5

Những gì bạn cần làm là yêu cầu ajax đối với máy chủ tốc hành của bạn và đánh giá phản hồi và cảnh báo người dùng tương ứng. Phần khách hàng này bạn sẽ làm giống như ngôn ngữ lập trình khác. Ví dụ:

. trong jquery phần phía khách hàng mà bạn có thể làm điều này

$.ajax({ 
url: 'route/action/', 
type: "POST", 
data: 'your form data', 
success: function(response){ 
    alert('evaluate response and show alert'); 
} 
}); 

Trong ứng dụng epxress của bạn, bạn có thể có một cái gì đó như thế này

app.post('route/action', function(req, res){ 
    //process request here and do your db queries 
    //then send response. may be json response 
    res.json({success: true}); 
});