2017-02-21 32 views
0

我正在使用node + express。我目前有一個文本輸入的形式,當你提交它搜索用戶在一個mongo數據庫與給定的搜索詞。但是,每當我執行搜索時,當它應該是「localhost:8080/talk」時,URL將變爲「localhost:8080/searchGlobalUsers」。這是帖子的路線:POST表單路由在地址欄中有POST路由

app.post('/searchGlobalUsers', function(req, res){ 
    var regex = new RegExp(req.body.globalUserSearch, 'i'); 
    console.log("GLOBAL_USER_SEARCH: " + req.body.globalUserSearch); 
    User.find({username: regex}, function(err, globalUserSearchQuery){ 
     res.render("talk", {globalUserSearchQuery : globalUserSearchQuery}); 
    }); 
}); 

,這裏是我的文字輸入+形式

<form action="/searchGlobalUsers" method="POST" > 
     <div class="row"> 
       <input type="text" name="globalUserSearch" class="u-full-width" placeholder="Search" id="add-friend-search-input"> 
     </div> 
     <div class="row"> 
       <button class="button-green-large" class="u-full-width" id="add-friend-search-submit">Search</button> 
     </div> 
    </form> 
+0

你正在將您的網頁重定向到/ searchGlobalUsers,這就是爲什麼您的網址與localhost:8080/searchGlobalUsers相同,並且在searchGlobalUsers路線中您正在呈現聊天視圖 –

回答

0

渲染功能是使用提供以客戶 只需使用此代碼

app.post('/searchGlobalUsers', function(req, res){ 
     var regex = new RegExp(req.body.globalUserSearch, 'i'); 
     console.log("GLOBAL_USER_SEARCH: " + req.body.globalUserSearch); 
     User.find({username: regex}, function(err, globalUserSearchQuery){ 
      req.flash('info', globalUserSearchQuery);    
      return res.redirect("/talk"); 
     }); 
    }); 

    app.get('/talk', function(req, res){ 
    res.render("talk", {"globalUserSearchQuery" : req.flash('info')}); 
    }) 
相關問題