我有一个预见表单字段,它根据名字和姓氏表单字段搜索人员记录。字段由Jquery发布,人员列表以JSON形式返回,结果显示为表格。为每个keyup事件提交发布请求。但是我遇到了这个问题。
假设用户在firstname字段中输入了“a”。该请求作为ajax调用提交。然后用户在字段中输入“b”。现在请求再次以'ab'作为名字提交。问题是,'ab'的结果数量较少,因此结果会立即显示。由于'a'有更多结果,因此需要一些时间来处理和构建结果表,一旦构建完表,它就会替换'ab'的现有表。这不是我想要的行为,因为'a'是第一个请求而'ab'是最新的请求,它不应该被取代。那么如何防止旧请求的结果取代新结果。提前谢谢!
--- ---更新
控制器方法类似于..
public @ResponseBody List<PSPerson> getPersonsWithNames(
@RequestParam("firstName") String firstName, @RequestParam("lastName") String lastName)
{
Map<String, String> attrMap = new HashMap<String, String>();
attrMap.put("firstName", firstName);
attrMap.put("lastName", lastName);
return personService.getPeople(attrMap);
}
答案 0 :(得分:0)
也许您可以为返回的Json值添加时间戳。在你的jquery中,将收到的最新时间戳与实际时间戳进行比较。
答案 1 :(得分:0)