1.

<script src='<%= Application["rootURL"] %>JS/jquery-1.4.1.min.js' type="text/javascript"></script>
<script src='<%= Application["rootURL"] %>JS/jquery.cookie.js' type="text/javascript"></script>
<script src='<%= Application["rootURL"] %>JS/jquery.autocomplete.js' type="text/javascript"></script>
<link rel="Stylesheet" href='<%= Application["rootURL"] %>JS/jquery.autocomplete.css' type="text/css"/> <script language="javascript" type="text/javascript"> var txtText7 = "#" + '<%= new DynamicControl(this, "Text7").ClientID%>';
var url1 = '<%= Application["rootURL"] %>文件夹名/文件名.ashx';
$(function () {
$(txtText7).autocomplete(url1);
});
</script>

2.新建一个Generic Handler文件

using System;
using System.Collections;
using System.Data;
using System.Web;
using System.Web.Services;
using System.Web.Services.Protocols;
using System.Data.Common;
using System.Diagnostics; namespace 文件夹名{
/// <summary>
/// Summary description for 文件名
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
public class 文件名 : IHttpHandler
{
public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "text/plain";
if (!Sql.IsEmptyString(context.Request.QueryString["q"]))
{
DataTable result = new DataTable();
string qName = context.Request.QueryString["q"].Trim();
if (!String.IsNullOrEmpty(qName))
{
result = GetCityName(qName, );
}
else
{
return;
} foreach (DataRow row in result.Rows)
{
context.Response.Write(row["NAME"] + "\n");
}
}
context.Response.End(); } public static DataTable GetCityName(string sPrefix, int count)
{
DataTable dt = new DataTable(); DbProviderFactory dbf = DbProviderFactories.GetFactory();
using (IDbConnection con = dbf.CreateConnection())
{
string sSQL;
sSQL = "select top {0} CityName+' ('+StateName+')' AS NAME " + ControlChars.CrLf
+ " from USA_State_City " + ControlChars.CrLf
+ " where CityName like @NAME " + ControlChars.CrLf
+ " order by CityName asc " + ControlChars.CrLf; using (IDbCommand cmd = con.CreateCommand())
{
cmd.CommandText = string.Format(sSQL, count);
Sql.AddParameter(cmd, "@NAME", sPrefix + "%");
try
{
using (DbDataAdapter da = dbf.CreateDataAdapter())
{
((IDbDataAdapter)da).SelectCommand = cmd;
da.Fill(dt);
}
}
catch (Exception ex)
{
SplendidError.SystemError(new StackTrace(true).GetFrame(), ex);
return null;
}
}
}
return dt;
} public bool IsReusable
{
get
{
return false;
}
}
}
}

3.重写jquery.autocomplete.js的selectCurrent方法

    function selectCurrent() {
var selected = select.selected();
if( !selected )
return false; var v = selected.result;
previousValue = v; if ( options.multiple ) {
var words = trimWords($input.val());
if ( words.length > ) {
var seperator = options.multipleSeparator.length;
var cursorAt = $(input).selection().start;
var wordAt, progress = ;
$.each(words, function(i, word) {
progress += word.length;
if (cursorAt <= progress) {
wordAt = i;
return false;
}
progress += seperator;
});
words[wordAt] = v;
v = words.join( options.multipleSeparator );
}
v += options.multipleSeparator;
} var vals = $input.val().split(",");
var txtval="";
if (vals.length > ) {
for (k = ; k < vals.length - ; k++) {
txtval += vals[k]+", ";
}
txtval += v;
}
else { txtval = v; }

$input.val(txtval);
hideResultsNow(); var iPos = selected.data.toString().indexOf("(") var sName= selected.data.toString().substring(,iPos); var IDendwith = $input.attr("ID").substring($input.attr("ID").lastIndexOf("_")+);
if (IDendwith=="TEXT7") {
$input.val(sName);
var txtStateID=IDendwith+;
var lenth=selected.data.toString().length-;
var sState=selected.data.toString().substring(iPos+,lenth);
$input.parent().parent().next().children().children().val(sState);
}
else
{
$input.trigger("result", [selected.data, selected.value]);
} return true;
}

JavaScript实现在textbox输入时自动去数据库匹配并找出类似值列出,选择后记得将值填入本textbox及下一个textbox的更多相关文章

  1. C#按回车Enter使输入焦点自动跳到下一个TextBox的方法收集

    在录入界面中,用户往往需要按回车键时光标自动跳入下一个文本框,以方便录入操作.在C#中实现该功能有多种方法,以下是小编收集的不使用TAB键,而直接用回车键将光标转到下一个文本框的实现方法. 一.利用W ...

  2. C++ Combobox输入时自动完成

    Combobox 在输入时自动完成 关键点 实现过程 BOOL m_bAuto; BOOL CProject02Dlg::PreTranslateMessage(MSG* pMsg)  {     i ...

  3. eclipse输入时自动提示

    当输入一部分代码时,其他的候选代码提示出来,可以提高开发的效率,设置方法如下: 选择Window -> Perferences -> Java -> Editor -> Con ...

  4. EditText(3)输入时自动完成功能

    在android输入自动完成功能由EditText的子类 AutoCompleteTextView 实现.如下: 1,在xml中使用 <AutoCompleteTextView android: ...

  5. 使用css使textbox输入内容自动变大写

    <style type="text/css"> input[type="text"] { text-transform:uppercase; } & ...

  6. easyui textbox 输入小写自动变大写,easyui textbox 绑定oninput事件 easyui textbox 绑定propertychange事件

    <input id="id" class="easyui-textbox" name="id" value="@Model. ...

  7. 设置EntityFramework 在开发时自动更新数据库

    1. NuGet 下载EntityFramework. 2. 定义Context 和 打开NuGet 命令 执行 Enable-Migrations , Libaray.DAL.Migrations. ...

  8. 解决SpringBoot+JPA中使用set方法时自动更新数据库问题

    项目进行了三分之二了,突然出现一个很诡异的bug,数据库存储的用户表中密码信息总是自动消失一部分,头疼了几天后突然想起同事有个对低权限用户查询的用户信息向前台传送时会把密码设成null后再传输,心想是 ...

  9. 在TextBox里面仅仅允许数字,按Enter键进入下一个TextBox

    <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title></title> ...

随机推荐

  1. TYVJ P1046 Blast Label:dp

    描述 设有字符串X,我们称在X的头尾及中间插入任意多个空格后构成的新字符串为X的扩展串,如字符串X为“abcbcd”,则字符串“abcb□cd”,“□a□bcbcd□”和“abcb□cd□”都是X的扩 ...

  2. Json 数组拼接

    var str1 = {"name": "apple", "sex": "21"};                 / ...

  3. hdu Strange fuction

    本题是一道二分题,但是要利用导数来求最小值.对原函数进行求导,得到的导函数为f(x)=42*pow(x,6)+48*pow(x,5)+21*pow(x,2)+10*x-y;因为0<=x<= ...

  4. 《GK101任意波发生器》升级固件发布(版本:1.0.2build627)

    一.固件说明: 硬件版本:0,logic.3 固件版本:1.0.2.build672 编译日期:2014-12-29 ====================================== 二. ...

  5. 【iHMI43真彩液晶模块】发布新版 DEMO 软件包,版本号为 0.14

    新版DEMO软件包主要在以下几个方面进行了改进: 1.改进触摸算法,使用链表注册模式:注册触摸按键后:用户只需要处理事件(event)就行了,其他都由系统完成: 2.改进systick 和 usart ...

  6. Nginx 笔记与总结(4)配置 server 访问日志

    打开 nginx.conf: [root@localhost ~]# cd /usr/local/nginx/conf [root@localhost conf]# vim nginx.conf 在默 ...

  7. 常用Ubuntu 命令

    sudo apt-get updatesudo apt-get upgrade以下2選1sudo apt-get install ubuntu-desktop如果你只想安装必要的桌面管理软件而不想安装 ...

  8. JQUERY 一些技巧在实际中的应用

    在jquery选择器中.继续做判断$("tr[rel!=" + id + "]").find('.status').html('--'); $("tr ...

  9. lua5.2版本在VS2010下的环境搭建

    第一次使用脚本语言,第一次使用解释性语言 公司的现在维护的游戏开发的比较早,采用的lua还是比较早的版本,像NPC脚本系统就是使用lua+luabind结合的module模式,服务器端没涉及到,所以不 ...

  10. WCF Basic Concept

    http://msdn.microsoft.com/library/ee354180.aspx Steps: Designing a Service Contract Implementing a W ...