2017-07-14 5 views
0

nodejs、express、およびejsを使用してアプリケーションを作成しようとしています。私がしようとしているのは、サーバーにフォームを送信し、結果を得るためにデータを処理するサーバー機能をトリガーし、ページ全体をリロードせずに結果を表示することです。サーバに情報を送信し、nodejを使用して処理されたデータを返す

現在、これは私が持っているものです。

EJS

<form method = "GET" action = "/sendinput" 
...something here 
</form> 

app.js

app.get('/sendinput', function (req, res) { 
    result = processData(req.query); 
}); 

私はフォームが送信されたときに実行する関数を取得するために管理しますが、その後関数の実行が終了してもページはロードされ続けます。私は結果をフェッチし、HTMLのフォームセグメントにページ全体を再ロードせずに表示させる方法もわかりません。

答えて

0

ページの読み込みを停止するには、res.end(); を使用して、機能が完了したことをサーバーに通知します。

app.get('/sendinput', function (req, res) { 
    result = processData(req.query); 
    res.end(); 
}); 
+0

しかし、空白のページにリダイレクトされました。フォームを送信したページに残る方法はありますか? – Sylph

+0

res.end()を 'res.send( 'submitted')'に変更します。 –

0

だから、最後に、私はリロードのためにページを要求し、私が欲しいものを得るために管理していないのAjaxを使用してそれを解決。

関連する問題