Struts2+jQuery_autoComplete.js实现自动填充的完整示例

本文介绍了一个基于jQuery和Struts框架实现的自动补全搜索功能。通过客户端JavaScript与服务器端交互,完成输入框的自动补全效果。该功能利用JSON格式传输数据,并通过特定的解析方法将服务器返回的数据展示在前端。
js代码:

        $(document).ready(function() {

$("#autocomplete").autocomplete("autoComplete.action", {
  minChars : 1,
  max : 15,
  matchContains: true,//包含即可自动填充,无论是一个单字母还是一个字符串都可以匹配
  mustMatch: false,  必须设置为false
  dataType : "json",
  extraParams: {    
  search: function() { return $("#autocomplete").val(); }    
        },  
  parse : function(data) {
   var rows = [];
   var d = data;
   for ( var i = 0; i < d.length;i++) {
    rows[rows.length] = {
     data : d[i],
     value : d[i],
     result : d[i].bname
   
    };
   }
   return rows;
  },
  formatItem : function(item){
   return "<div>"+"<font color='gray'>"+item.bname+"</font>"+"</div>";   
  }
})  
});

struts.xml:

        <action name="autoComplete" class="BookDetailAction" method="autoComplete">
                   <result name="success" type="json">
                        <param name="root">result</param>
                   </result>
          </action>

Action代码:

         public String autoComplete() throws Exception {
  HttpServletResponse response = ServletActionContext.getResponse();
  HttpServletRequest request = ServletActionContext.getRequest();
  response.setCharacterEncoding("utf-8");
  String search = request.getParameter("search");
  search= new String(search.getBytes("ISO-8859-1"),"UTF-8");
  List<Bookdetail> books = new ArrayList<Bookdetail>();
  if (Utils.isAvailable(search)) {
     String key = search.trim();
      books = bookService.autoComplete(key);
  }
  Gson gson=new Gson();
  String result = gson.toJson(books);  
        response.setContentType("text/json;charset=utf-8");  
        response.setHeader("Chache=Control", "no-cache");  
        PrintWriter outWriter = response.getWriter();  
        outWriter.print(result);  
        outWriter.flush();  
        outWriter.close();  
  return SUCCESS;
}

jsp页面主要代码:

        <script type="text/javascript" src="js/jquery-1.5.2.js"></script>
  <script type="text/javascript" src="js/jquery.autocomplete.js"></script>
  <script type="text/javascript" src="js/script.js"></script>
  <link rel="Stylesheet" type="text/css" href="style/jquery.autocomplete.css"/>

<input type="text" maxlength="100" id="autocomplete" name="search" size="60" >
      <input type="submit" class="btn" id="su" value="搜索书籍">

内容概要:本文系统阐述了利用BP神经网络结合Matlab编程实现对水质变化趋势进行科学预测的技术方法。通过构建BP神经网络模型,利用历史水质数据(如pH值、溶解氧、浊度等)进行训练,充分挖掘数据间的非线性关系,实现对未来水质状况的精准预测。该方法在处理复杂、非线性的环境数据方面表现出色,具有较强的泛化能力和实用性,适用于环境监测与水资源管理领域。文中配套提供了完整的Matlab代码实现方案,涵盖数据预处理、模型构建、训练优化及预测分析全过程,便于读者复现与应用。; 适合人群:具备一定机器学习理论基础和Matlab编程能力的科研人员、环境工程及相关专业的高校学生,以及从事水质监测、水污染预警和水资源管理的技术人员。; 使用场景及目标:①用于水质关键参数的时间序列预测,支持水环境长期趋势分析;②为水污染早期预警系统建设、水资源保护政策制定与生态环境治理提供可靠的数据支撑和技术手段;③作为教学实践案例,帮助学习者深入理解神经网络在环境科学中的建模流程与应用逻辑。; 阅读建议:建议读者结合文中提供的Matlab代码逐模块运行与调试,重点掌握数据归一化、网络结构设计、训练参数调优及预测结果可视化等关键步骤,同时鼓励将该模型迁移至其他类似时序预测任务中进行拓展验证与性能优化。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值