代码之家  ›  专栏  ›  技术社区  ›  Praveen Puglia

jquery自动完成,尽管有响应,但没有显示搜索结果

  •  1
  • Praveen Puglia  · 技术社区  · 11 年前

    我正试图在一个java/jsp项目中实现jquery自动完成。

    自动完成功能可以正常执行,甚至可以将该术语带到服务器上。服务器也发送必要的响应,这些响应在开发人员工具中可见。问题是自动完成正在显示 No search results 即使在得到回应之后。

    这是我的ajax jsp页面- ajaxOtherLocations.jsp(其他位置) -我在那里查询结果。

    <%
      String query = (String)request.getParameter("term");
      System.out.println(query);
      LocationDAO locationModel = new LocationDAO();
      ArrayList<LocationBean> locations = locationModel.getLocationsByType("others");
    
      for( LocationBean location : locations )
      {
       out.print(location.getLocationName()+"\n");
      }
    %>
    

    在网络选项卡中的开发人员工具中,我可以看到一个请求被发送到上面的页面,响应类似于。。。

    LBNagar
    Hitech City
    Jubilee Hills
    Film Nagar
    Lakdikapool
    Koti
    Dilsukhnagar
    

    所有分隔符 line-end 正如你所看到的那样。

    我打电话给 autocomplete 功能如下。。。

    $(".auto-complete").keypress(function(){
        $(this).autocomplete({source:"ajax/ajaxOtherLocations.jsp"});
        });
    

    我哪里做错了?

    注意:-我从本教程中获得了一些想法- http://www.java4s.com/jquery-tutorials/example-get-autocomplete-feature-in-javajsp-with-jquery-api/

    1 回复  |  直到 11 年前
        1
  •  2
  •   Kapil    11 年前

    我认为您使用的是jquery自动完成,在这种情况下,您需要以json格式返回数据。您可以参考以下链接:

    http://jqueryui.com/autocomplete/#remote-jsonp