我正在尝试从收集字段property_address中搜索位置。它包含SouthEx,New delhi等值。如果我搜索SouthEx,New delhi,Delhi,India,它将显示包含southEx,New Delhi的结果。
我们将如何使用mongoose搜索?
答案 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'});
}
});