下記のformでfilterを選んでApplyボタンを押すと、その結果が表示される流れです。
結果が表示される際に、ページの再読み込みされてしまいます。
ページの再読み込みがされずに、<div>の表示結果だけ変わるようにしたいです。
非同期処理をすれば、良いと言うところまでわかったのですが、
Backend側でどのような処理をしてMongodbのデータを渡し、フロントエンド側でどのように受け取れば
ページ再読み込みがされないのでしょうか?
アドバイスいただけると幸いです。
<フロントエンド>
ejs
1<form action="/" method="GET"> 2 <!-- Review --> 3 <div class="form-group"> 4 <input id="star1" type="radio" name="review_min" value="5" /> 5 <label for="star1">★</label> 6 </div> 7 8 <button type="submit" class="btn btn-success btn-filter mt-5"> 9 Apply 10 </button> 11</form> 12 13<div> 14 フィルターした結果を表示 15</div>
<バックエンド>
nodejs
1router.get("/", (req, res) => { 2 let query = {}; 3 let review_min = req.query.review_min; 4 5 query = { review: { $gte: review_min } }; 6 7 Place.find(query, (err, places) => { 8 res.render("index", { places, query }); 9 }); 10});
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/09/22 15:54