文本框如何实现模糊查询

zhengyingcan 2015-07-02 07:57:24
供模糊查询记录大概有250条,每一条的记录有100个字, 模糊查询的记录在SQL SERVER 表里, 我感觉数据有点大, 希望能保证用户网速差的情况下,也能轻松进入这个页面, 并且像百度一下,在文本框中实现模糊查询,
请帮忙推荐一种方式,非常感谢.

我也百度了一下,有一个推荐dataTable转换成Json格式的方式, 但是我不能理解
后台的数据如何到前台去呢, 这是一个什么原理呢, js能调后台数据,我一直不解,毕竟js 没有写连接sql server 的字符串.
...全文
3996 29 打赏 收藏 转发到动态 举报
写回复
用AI写文章
29 条回复
切换为时间正序
请发表友善的回复…
发表回复
xuunique 2015-07-12
  • 打赏
  • 举报
回复
七年前我也是这样,不懂js ajax
啾啾我 2015-07-10
  • 打赏
  • 举报
回复
其实就是异步请求而已,你可以了解一下ajax
aa2310320 2015-07-10
  • 打赏
  • 举报
回复
代码搬运工, 呵呵。
zhengyingcan 2015-07-06
  • 打赏
  • 举报
回复
原来是我下载的控件有问题,换成最原始版的,换个方式就可以
引用 3 楼 kongwei521 的回复:
参考下我写的。 http://blog.csdn.net/kongwei521/article/details/11906885 c#+jquery-autocomplete实现类似百度,Google模糊查询
我现在抄以上的代码, 提示 Microsoft JScript 运行时错误: 无法获取属性“opera”的值: 对象为 null 或未定义 , 不知道是那里出了问题. 代码在 js 的 var select = $.Autocompleter.Select(options, input, selectCurrent, config); 停止住了.
蝶恋花雨 2015-07-05
  • 打赏
  • 举报
回复
引用 20 楼 zhengyingcan 的回复:
参考http://www.cnblogs.com/Peter-Zhang/archive/2011/10/22/2221147.html
zhengyingcan 2015-07-05
  • 打赏
  • 举报
回复
加了还是没有什么用 ,依然没有触发事件,代码如下,我还是另外找一个代码调试吧 <script type="text/javascript" src="../Js/DatePicker/WdatePicker.js"></script> <link href="../Js/jquery-ui-1.10.3.custom.css" rel="stylesheet"/> <script type="text/javascript" src="../Js/jquery-1.9.1.js"></script> <script type="text/javascript" src="../Js/jquery-ui-1.10.3.custom.js"></script> <script type="text/javascript" src="../Js/jquery.autocomplete.js"></script> <script type="text/javascript" > var arry = new Array(); $(document).ready(function () { $.ajax({ type: "POST", contentType: "application/json", url: "AjaxPage.aspx/GetAllHints", data: "{}", dataType: "json", success: function (msg) { var datas = eval('(' + msg.d + ')'); for (var i = 0; i < datas.length; i++) { arry[i] = datas[i].Key; } $("#txtRP15").autocomplete( { source: arry }); } }); }); </script>
zhengyingcan 2015-07-05
  • 打赏
  • 举报
回复
好像是漏了<script type="text/javascript" src="Scripts/jquery.autocomplete.js"></script> 我再试试
zhengyingcan 2015-07-05
  • 打赏
  • 举报
回复
有引用的如下,我也从网上下载下来了,我的QQ号是 380151700 ,有空帮忙远程看一下. <script type="text/javascript" src="../Js/DatePicker/WdatePicker.js"></script> <link href="../Js/jquery-ui-1.10.3.custom.css" rel="stylesheet"/> <script type="text/javascript" src="../Js/jquery-1.9.1.js"></script> <script type="text/javascript" src="../Js/jquery-ui-1.10.3.custom.js"></script>
蝶恋花雨 2015-07-05
  • 打赏
  • 举报
回复
引用 16 楼 zhengyingcan 的回复:
我感觉根本上那个文本框没有在触发什么事件,输入的时候,断点没有动静
在引用jquery.autocomplete.js 这个js
无涯大者 2015-07-05
  • 打赏
  • 举报
回复
这点数据量确实是毛毛雨,推荐好好深入学习下Jquery ajax 后台通过json传值给前台
zhengyingcan 2015-07-05
  • 打赏
  • 举报
回复
是不是 /jquery-1.9.1.js 不能代替 jquery-1.4.1.js 呢
zhengyingcan 2015-07-05
  • 打赏
  • 举报
回复
引用 21 楼 kongwei521 的回复:
[quote=引用 20 楼 zhengyingcan 的回复:]
参考http://www.cnblogs.com/Peter-Zhang/archive/2011/10/22/2221147.html[/quote] 还是不行,不知道原因在那里了, 程序也没有报错, 有空的话,能不能做一个例子发QQ邮件给我,380151700@qq.com,谢谢
zhengyingcan 2015-07-05
  • 打赏
  • 举报
回复
public partial class AjaxPage : System.Web.UI.Page 7 { 8 [WebMethod] 9 public static string GetAllHints() 10 { 11 Dictionary<string, string> data = new Dictionary<string, string>(); 12 data.Add("苹果4代iphone正品", "21782"); 13 data.Add("苹果4代 手机套", "238061"); 请问一下 第8行 [WebMethod] 起什么作用呢,可以去掉吗,我以前没有见过这样子的语法
  • 打赏
  • 举报
回复
而不会编程只会拿出一个“结果”问别人的 --> 而不会调试只会拿出一个“结果”问别人的 首先能把你的调试而得到的、确实有问题的那个画面直接贴出来,这样可以节省大家的时间。
  • 打赏
  • 举报
回复
引用 7 楼 zhengyingcan 的回复:
[quote=引用 3 楼 kongwei521 的回复:] 参考下我写的。 http://blog.csdn.net/kongwei521/article/details/11906885 c#+jquery-autocomplete实现类似百度,Google模糊查询
我改成如下,但是没有效果不知道是什么原因,也没有报错 <head runat="server"> <title>新奖惩记录增加</title> <style type="text/css"> .style1 { text-align: center; } </style> <script type="text/javascript" src="../Js/DatePicker/WdatePicker.js"></script> <link href="../Js/jquery-ui-1.10.3.custom.css" rel="stylesheet"/> <script type="text/javascript" src="../Js/jquery-1.9.1.js"></script> <script type="text/javascript" src="../Js/jquery-ui-1.10.3.custom.js"></script> <script type="text/javascript" > var arry = new Array(); $(document).ready(function () { $.ajax({ type: "POST", contentType: "application/json", url: "AjaxPage.aspx/GetAllHints", data: "{}", dataType: "json", success: function (msg) { var datas = eval('(' + msg.d + ')'); for (var i = 0; i < datas.length; i++) { arry[i] = datas[i].Key; } $("#txtRP15").autocomplete( { source: arry }); } }); }); </script> </head>[/quote] 首先,那你要学会调试javascript程序。也就是说在 var datas = eval('(' + msg.d + ')') 这里设置断点,并且在vs调试器中断时使用变量监视器去查看 msg和msg.d的值是否正确。 然后你需要“单步执行”一条语句(选择菜单的“逐过程”而非“逐语句”选项),然后查看 datas 变量保存的是什么类型的值,倒底data[0].Key 会是个什么值?! 然后要看看 array 数组倒底有没有 datas 那么多单元,倒底能不能保证 arry[i] 这里的下标 i 能够找到数组单元。 然后要在vs的变量监视器或者命令窗口中查看 $("#txtRP15") 倒底能不能返回真正的对象,其 .length 属性是什么值,甚至 [0]、html() 得到的是什么值,等等。 总之,看一个程序员有没有正规学过编程,看他会不会调试。而不会编程只会拿出一个“结果”问别人的,可能仅仅是从网上下载的免费资料自学的,而没有让人亲自手把手指点过真正的编程方法。
zhengyingcan 2015-07-04
  • 打赏
  • 举报
回复
引用 2 楼 starfd 的回复:
直接在aspx里面通过下面的方式将值输出到页面上,反正你也就250条数据,然后就是从js中进行模糊查询
var arr= '<%=%>';
能不能给我一个例子
zhengyingcan 2015-07-04
  • 打赏
  • 举报
回复
引用 3 楼 kongwei521 的回复:
参考下我写的。 http://blog.csdn.net/kongwei521/article/details/11906885 c#+jquery-autocomplete实现类似百度,Google模糊查询
我改成如下,但是没有效果不知道是什么原因,也没有报错 <head runat="server"> <title>新奖惩记录增加</title> <style type="text/css"> .style1 { text-align: center; } </style> <script type="text/javascript" src="../Js/DatePicker/WdatePicker.js"></script> <link href="../Js/jquery-ui-1.10.3.custom.css" rel="stylesheet"/> <script type="text/javascript" src="../Js/jquery-1.9.1.js"></script> <script type="text/javascript" src="../Js/jquery-ui-1.10.3.custom.js"></script> <script type="text/javascript" > var arry = new Array(); $(document).ready(function () { $.ajax({ type: "POST", contentType: "application/json", url: "AjaxPage.aspx/GetAllHints", data: "{}", dataType: "json", success: function (msg) { var datas = eval('(' + msg.d + ')'); for (var i = 0; i < datas.length; i++) { arry[i] = datas[i].Key; } $("#txtRP15").autocomplete( { source: arry }); } }); }); </script> </head>
zhengyingcan 2015-07-04
  • 打赏
  • 举报
回复
我感觉根本上那个文本框没有在触发什么事件,输入的时候,断点没有动静
  • 打赏
  • 举报
回复
如果在 var i=0; 这里设置断点不能中断,那么你就把电脑砸了吧。不能调试,谁还编程啊?!没有好的调试工具,则会把人的脑袋累坏的。
  • 打赏
  • 举报
回复
如果开始调试了,恭喜你。只要调试就应该坚持。 首先,vs只支持ie调试。所以在开始调试时(不调试只看效果则不需要),vs的“执行”按钮那里,应该选择ie而不是其它浏览器。 然后,如果你恰好简单地改写了html、js、css之类文件,而ie浏览下不能断点中断,那么按 Ctrl+Ship+Del 键清除一下ie的缓存。然后重新启动页面。 如果还是不能中断,那么你就随便在页面上写一条js语句,例如
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
        <asp:MultiView ID="MultiView1" runat="server"></asp:MultiView>
    </form>

    <script type="text/javascript">
        var i = 0;
    </script>
</body>
</html>
或者html文件也是一样。
加载更多回复(8)

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧