效果图:
  
SutaraLumpur-jQuery.ajaxComboBox.js简介地址:http://d.hatena./sutara_lumpur/20090124/1232781879
下载地址:https://github.com/SutaraLumpur/jquery.ajaxComboBox.js/zipball/master
html代码:
- <input type="text" name="txtZdType" id="txtZdType" autocomplete="off" />
javascript代码:
- <script src="../Scripts/jquery-1.8.3.min.js" type="text/javascript"></script>
- <link href="../Scripts/acbox/jquery.ajaxComboBox.css" rel="stylesheet" type="text/css" />
- <script src="../Scripts/acbox/jquery.ajaxComboBox.7.1.js" type="text/javascript"></script>
- <script type="text/javascript">
- $(function () {
- //选择入院诊断Ajax自动完成
- $('#txtZdType').ajaxComboBox("/WebService/AjaxService.asmx/GetBaicd", { lang: 'en', per_page: 15, field: 'Name', list_field: 'py' });
- });
- </script>
C# WebService代码:
- /// <summary>
- /// 根据传人的参数,分页的诊断数据
- /// </summary>
- /// <param name="page_num">当前页码</param>
- /// <param name="per_page">每页显示条数</param>
- [WebMethod]
- public void GetBaicd(int page_num, int per_page)
- {
- //string and_or, string db_table, string[][] order_by, string[][] desc, string[] search_field;
- HttpRequest Request = HttpContext.Current.Request;
- string q_word = Request["q_word[]"];
- ba_icd10BLL bll = new ba_icd10BLL();
- int count = bll.GetCount();//总条数
- StringBuilder sb = new StringBuilder();
- sb.Append("{\"result\":");
- string strWhere = "";
- if (!string.IsNullOrWhiteSpace(q_word))
- {
- strWhere = string.Format("where Py like '{0}%' or Name like '{0}%'", q_word);
- }
- List<ba_icd10Info> lst = bll.GetPagerList(page_num, per_page, strWhere);
- if (lst != null && lst.Count > 0)
- {
- JavaScriptSerializer jss = new JavaScriptSerializer();
- jss.Serialize(lst, sb);
- }
- sb.AppendFormat(",\"cnt_whole\":{0}}}", count);
- //return sb.ToString();
- HttpContext.Current.Response.Write(sb.ToString());
- HttpContext.Current.Response.End();
- }
ps:当前项目使用的时候,修改了网上下载的jquery.ajaxComboBox.7.1.js,
改动位置:69,87行,文件路径,1293 匹配正则,1302自动完成匹配字段,1827行赋值到其它文本框。
|