【发布时间】:2018-04-10 22:11:07
【问题描述】:
我有这个 api 路由设置,如果我在浏览器中手动输入 /api,它会从我的 staff.json 文件中返回数据:
var express = require('express');
var router = express.Router();
var staffData = require('../data/staff.json')
router.get('/api', function(req, res){
res.json(staffData);
});
module.exports = router;
但是,当我尝试使用此功能使其在我的一个视图中工作时:
$('#search').click(function(){
$.getJSON('api', function(key,val){
var search = $('#search').val();
var regex = new RegExp('search', 'i');
var output;
$.each(staffData, function(key, val){
if(val.name.search(regex) != -1 || val.email.search(regex)){
output += "<tr>";
output += "<td id='"+key+"'>"+val.name+"</td>";
output += "<td id='"+key+"'>"+val.email+"</td>";
output += "</tr>";
}
});
$('tbody').html(output);
console.log(output);
});
});
我一直收到一条错误消息,提示未定义人员数据,尽管它已明确定义并在我的 api 路由中返回。
谁能解释可能是什么问题?
问候
【问题讨论】:
标签: javascript json node.js ajax express