猫鼬部分搜索

时间:2018-06-19 11:07:04

标签: node.js mongodb mongoose mongodb-query

我正在尝试从收集字段property_address中搜索位置。它包含SouthEx,New delhi等值。如果我搜索SouthEx,New delhi,Delhi,India,它将显示包含southEx,New Delhi的结果。

我们将如何使用mongoose搜索?

1 个答案:

答案 0 :(得分:1)

表格:

<form method="GET">
  <input type="text" name="q" id="q"/>
</form>

Ajax请求输入文本

<script>
$(document).on('keyup','#q',function(){
   if($(this).val()!=='' || $(this).val!=undefined){
      var query=$(this).val();
      $.ajax({
         url:'http://localhost:3000/search?q='+ query,
         type:'GET',
         dataType:'json',
         success:function(response){
              console.log(response);
              if(response.status=='ok'){
                 console.log(response.search_results);
              }
          },
         error:function(){
             alert('Failed to search address');
         } 
      });
   }
});
</script>

server.js

app.get('/search',function(req,res) {

 if(req.query && req.query.q) {

     var q = req.query.q;

     YourModel.find({"property_address": new RegExp('^'+q+'$', "i")}, function(err, data) {
   if(!err && data) {
     return res.json({status:'ok',search_results:data});
   }
});
} else {
     return res.json({status:'error',message:'No input'});
}
});
相关问题