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. linux tar 备份命令

    转载:http://www.douban.com/note/57861194/ tar [-cxtzjvfpPN] 文件与目录 ….参数:-c :建立一个压缩文件的参数指令(create 的意思):- ...

  2. 彻底卸载oracle数据库

    有时候因为各种各样的原因,我们不得不重装Oracle,但按照一般的操作,很多朋友用了oracle的删除,然后,你会发现重新安装时,点了下一步安装界面就消失了.事实证明,万能的重启也是解决不了问题的.往 ...

  3. Mina工具类v1.5

    package com.cucpay.fundswap.util; import java.net.InetSocketAddress; import java.nio.charset.Charset ...

  4. Redis中7种集合类型应用场景

    StringsStrings 数据结构是简单的key-value类型,value其实不仅是String,也可以是数字.使用Strings类型,你可以完全实现目前 Memcached 的功能,并且效率更 ...

  5. Xshell选中的同时把内容复制到剪贴板(还可以设置设置文本分隔符)

    1.设置对话框 工具 -> 选项 -> 键盘和鼠标 -> 将选定的文本自动复制到剪贴板 2.贴图如下 2.1.打开设置对话框 2.2.设置键盘鼠标,左键复制 2.3.右键粘贴 作者: ...

  6. iOS开发中代理使用出现的问题解决

    在给自定义的LHQTabBar设置代理的时候,定义的代理的属性的时候此时会报一个警告 我们需要遵守UITabBarDelegate的协议才行, 不过此时还有警告,警告已经变成了 此时我们需要在.m文件 ...

  7. service mongod start start: Unknown job: mongod问题

    终于解决了这个异常蛋疼的问题,当安装完毕mongodb的时候,执行: root@ubuntu:/usr/local# service mongod start 出现: start: Unknown j ...

  8. PHP 设计模式 笔记与总结(9)数据对象映射模式

    [数据对象映射模式] 是将对象和数据存储映射起来,对一个对象的操作会映射为对数据存储的操作.例如在代码中 new 一个对象,使用数据对象映射模式就可以将对象的一些操作比如设置一些属性,就会自动保存到数 ...

  9. 简单实现Redis缓存中的排序功能

    1.在实现缓存排序功能之前,必须先明白这一功能的合理性.不妨思考一下,既然可以在数据库中排序,为什么还要把排序功能放在缓存中实现呢?这里简单总结了两个原因:首先,排序会增加数据库的负载,难以支撑高并发 ...

  10. HTmlTableTOExcel

    function TableTOExcel() { //第一种方法 //var url = 'data:application/vnd.ms-excel;base64,' + encodeURICom ...