<script type="text/javascript">
var v = 1;
var stockInfoJson = [
{ "name": "深发展A", "code": "000001", "spell": "sfza", "count":"32435" },
{ "name": "万科A", "code": "000002", "spell": "wka", "count":"231" },
{ "name": "ST 国 农", "code": "000004", "spell": "stgn", "count":"4567" },
{ "name": "世纪星源", "code": "000005", "spell": "sjxy", "count":"2345" },
{ "name": "深振业A", "code": "000006", "spell": "szya", "count":"8799" },
{ "name": "ST 达 声", "code": "000007", "spell": "stds", "count":"12345234" },
{ "name": "ST宝利来", "code": "000008", "spell": "stbll", "count":"56235" },
{ "name": "中国宝安", "code": "000009", "spell": "zgba", "count":"9833" },
{ "name": "S ST华新", "code": "000010", "spell": "ssthx", "count":"24878" },
{ "name": "山航B", "code": "200152", "spell": "shb", "count":"32435" },
{ "name": "*ST帝贤B", "code": "200160", "spell": "stdxb", "count":"32435" },
{ "name": "雷伊B", "code": "200168", "spell": "lyb", "count":"32435" },
{ "name": "宝石B", "code": "200413", "spell": "bsb", "count":"32435" },
{ "name": "小天鹅B", "code": "200418", "spell": "xteb", "count":"32435" },
{ "name": "粤高速B", "code": "200429", "spell": "agsb", "count":"32435" },
{ "name": "宁通信B", "code": "200468", "spell": "ltxb", "count":"32435" },
{ "name": "晨鸣B", "code": "200488", "spell": "cmb", "count":"32435" },
{ "name": "珠江B", "code": "200505", "spell": "zjb", "count":"32435" },
{ "name": "闽灿坤B", "code": "200512", "spell": "mskb", "count":"32435" },
{ "name": "华电国际", "code": "600027", "spell": "hdgj", "count":"32435" }
]; $(function () {
/*
$.ajax({
type: "POST",
contentType: "application/json",
url: "AjaxPage.aspx/GetAllHints",
data: "{}",
dataType: "json",
success: function (msg) {
var datas = eval('(' + msg.d + ')');
$("#keywords").autocomplete(
datas,
{
minChars: 1,
matchCase: false, //不区分大小写
autoFill: false,
max: 10,
formatItem: function (row, i, max) {
return "<table width='100%' border='0' cellspacing='0' cellpadding='0'><tr><td align='left' height='24'><b>" + row.name + "</b></td><td align='right'><font style='color: #009933; font-family: 黑体; font-style: italic'>约" + row.count + "个宝贝</font>&nbsp;&nbsp;</td></tr></table>";
},
formatMatch: function (row, i, max) {
return row.name;
},
formatResult: function (row) {
return row.name;
},
reasultSearch: function (row, v)//本场数据自定义查询语法 注意这是我自己新加的事件
{
//自定义在code或spell中匹配
if (row.data.code.indexOf(v) == 0 || row.data.spell.indexOf(v) == 0 || row.data.name.indexOf(v) == 0) {
return row;
}
else {
return false;
}
}
}).result(function (event, data, formatted) {
var encodeKeyword = encodeURIComponent(encodeURIComponent(data.name));
searchParams = "keyword=" + encodeKeyword;
window.location.href = "http://localhost/products.aspx?" + searchParams;
});
}
});
*/ $("#keywords").autocomplete(
"SearchHanle.ashx",
{
minChars: 1,
matchCase: false, //不区分大小写
autoFill: false,
max: 10,
parse: function (data) {
var d = eval("(" + data + ")"); //此处要用eval函数;
var rows = new Array();
for (var i = 0; i < d.length; i++) {
rows[rows.length] = {
data: d[i],
value: d[i].code,
result: d[i].name
}
}
return rows;
},
formatItem: function (row, i, max) {
return "<table width='100%' border='0' cellspacing='0' cellpadding='0'><tr><td align='left' height='24'><b>" + row.name + "</b></td><td align='right'><font style='color: #009933; font-family: 黑体; font-style: italic'>约" + row.count + "个宝贝</font>&nbsp;&nbsp;</td></tr></table>";
},
formatMatch: function (row, i, max) {
return row.name;
},
formatResult: function (row) {
return row.name;
},
reasultSearch: function (row, v)//本场数据自定义查询语法 注意这是我自己新加的事件
{
//自定义在code或spell中匹配
if (row.data.code.indexOf(v) == 0 || row.data.spell.indexOf(v) == 0 || row.data.name.indexOf(v) == 0) {
return row;
}
else {
return false;
}
}
}).result(function (event, data, formatted) {
var encodeKeyword = encodeURIComponent(encodeURIComponent(data.name));
searchParams = "keyword=" + encodeKeyword;
window.location.href = "http://localhost/products.aspx?" + searchParams;
});
});
</script>

先记一下,方法二是存在bug的。

jquery.autocomplete.js 两种实现方法的更多相关文章

  1. 史上最全的CSS hack方式一览 jQuery 图片轮播的代码分离 JQuery中的动画 C#中Trim()、TrimStart()、TrimEnd()的用法 marquee 标签的使用详情 js鼠标事件 js添加遮罩层 页面上通过地址栏传值时出现乱码的两种解决方法 ref和out的区别在c#中 总结

    史上最全的CSS hack方式一览 2013年09月28日 15:57:08 阅读数:175473 做前端多年,虽然不是经常需要hack,但是我们经常会遇到各浏览器表现不一致的情况.基于此,某些情况我 ...

  2. Js类的静态方法与实例方法区分以及jQuery如何拓展两种方法

    上学时C#老师讲到对象有两类方法,静态方法(Static)和实例方法(非Static),当时不理解静态是为何意,只是强记. 后来从事前端工作,一直在对类(即对象,Js中严格来说没有类的定义,虽众所周知 ...

  3. jQuery插件开发的两种方法及$.fn.extend的详解

    jQuery插件开发分为两种: 1 类级别 类级别你可以理解为拓展jquery类,最明显的例子是$.ajax(...),相当于静态方法. 开发扩展其方法时使用$.extend方法,即jQuery.ex ...

  4. 原生Js 两种方法实现页面关键字高亮显示

    原生Js 两种方法实现页面关键字高亮显示 上网看了看别人写的,不是兼容问题就是代码繁琐,自己琢磨了一下用两种方法都可以实现,各有利弊. 方法一 依靠正则表达式修改 1.获取obj的html2.统一替换 ...

  5. jQuery ajax调用后台aspx后台文件的两种常见方法(不是ashx)

    在asp.net webForm开发中,用Jquery ajax调用aspx页面的方法常用的有两种:下面我来简单介绍一下. [WebMethod] public static string SayHe ...

  6. jQuery插件开发的两种方法及$.fn.extend的详解(转)

    jQuery插件开发的两种方法及$.fn.extend的详解 jQuery插件开发分为两种:1 类级别.2 对象级别,下面为大家详细介绍下   jQuery插件开发分为两种: 1 类级别 类级别你可以 ...

  7. JS中的两种刷新方法以及区别和适用范围

    在项目中有一个人信息修改的页面,但是修改后显示的却是修改之前的内容,分析问题后发现查询语句写在了修改语句之前,有些某些需要又必须这么写,但是修改信息后先却显示之前的信息也太不科学了. 所以我就想用js ...

  8. JS两种声明函数的方法以及调用顺序

    两种声明方法: 1. var a = function () {...}; 2. function a() {...}; 第一种方式必须先声明后调用,而第二种方式函数调用在声明之前之后都可以. //第 ...

  9. Jquery autocomplete.js输入框联想补全功能

    Jquery autocomplete.js插件下载地址:http://files.cnblogs.com/files/jinzhiming/autocomplete.rar 有两种用法,一种是直接使 ...

随机推荐

  1. 【POJ】1062 昂贵的聘礼(spfa)

    http://poj.org/problem?id=1062 此题一开始果断想到暴力.. 但是n<=100果断不行. 一看题解,噗!最短路... 构图很巧妙. 每一个物品对应的所需物品相当于一个 ...

  2. 【C语言】06-基本数据类型

    C语言有丰富的数据类型,因此它很适合用来编写数据库,如DB2.Oracle都是C语言写的. C语言的数据类型大致可以分为下图中的几类: 回到顶部 一.变量 跟其他语言一样,C语言中用变量来存储计算过程 ...

  3. twitter storm源码走读之4 -- worker进程中线程的分类及用途

    欢迎转载,转载请注明出版,徽沪一郎. 本文重点分析storm的worker进程在正常启动之后有哪些类型的线程,针对每种类型的线程,剖析其用途及消息的接收与发送流程. 概述 worker进程启动过程中最 ...

  4. PHP实现远程下载文件到本地

    PHP实现远程下载文件到本地 投稿:hebedich 字体:[增加 减小] 类型:转载   经常写采集器发布接口需要使用到远程附件的功能,所以自己写了一个PHP远程下载文件到本地的函数,一般情况下已经 ...

  5. Bootstrap页面布局23 - BS折叠内容

    <div class='container-fluid'> <h3 class='page-header'>Bootstrap 折叠内容</h3> <!--如 ...

  6. LR处理文件上传和下载

    文件上传 在业务场景有上传操作时,使用LR能录制到上传操作,代码如下.在录制的原始代码中,Filename的Value是上传的文件名,name的Value是一串文件名的加密串,file的Value也是 ...

  7. 开班典礼-老师玩命的教,大家玩命的学,沉静,18K

    接下来的四个月决定我的命运,三年前决定现在,现在决定三年后.喜讯,双元安卓四期,1368$,到第二期仍然不成熟,打分意见多写, 孙健:15011386618 喊出你 的目标.自己监督不了自己,别人可能 ...

  8. ArrayList调用remove方法需要注意的地方

    ArrayList中有remove 方法和 removeAll方法, ArrayList中不仅继承了接口Collection中的remove方法,而且还扩展了remove方法. Collection中 ...

  9. P1018 乘积最大

    开始定义状态f[i][j][k]为[i,j)区间插入k个括号,使用记忆化搜索,但是成功爆栈,得到4个mle #include <bits/stdc++.h> using namespace ...

  10. wajueji

    #include<stdio.h>int map[3]={42,3,99};int step[3]={0};int max=99999;void qian(){ int i=0; int ...