.net 搜索联想词
思路:
1.ajax请求后台方法获取数据。
2.通过jquery将请求到的数据显示在页面上。
前台
<div class="sc_con" id="bbsearch">
<input type="text" class="sc_input" id="txtName" autocomplete="off" placeholder="输入药品信息,寻找全球最低价" />
<input type="button" name="" value="立即搜索" onclick="mm()" class="sc_btn" />
<div id="bigAutocompleteContent" class="associational_word"></div>
</div>
样式
<style>
.associational_word {
display: none;
position: absolute;
z-index: 100;
border: 1px solid #BCBCBC;
background-color: #FFFFFF;
width: 841px;
font-size: 15px;
overflow-x: hidden;
overflow-y: auto;
left: 100px;
line-height: 25px;
} .ct {
background: none repeat scroll 0 0 #eaeaea !important;
}
</style>
jquery
<%-- 联想词 --%>
<script type="text/javascript">
$(function () {
$(document).keypress(function (e) {
if (e.keyCode == 13) {
var val = $("#txtName").val();
window.location.href = "/JkCommerce/Index_j" + val + ".html";
return false;
}
}) //文本框按下回车事件
$("#txtName").keyup(function () {
if (event.keyCode == 13) {
mm();
};
setTimeout(function () {
associationalWord();
}, 500);
}); //鼠标悬停时选中当前行
$("#bigAutocompleteContent").delegate("tr", "mouseover", function () {
$("#bigAutocompleteContent tr").removeClass("ct");
$(this).addClass("ct");
}).delegate("tr", "mouseout", function () {
$("#bigAutocompleteContent tr").removeClass("ct");
}); //单击选中行后,选中行内容赋值到输入框中
$("#bigAutocompleteContent").delegate("tr", "click", function () {
$("#txtName").val($(this).find("td").html());
var $bigAutocompleteContent = $("#bigAutocompleteContent");
if ($bigAutocompleteContent.css("display") != "none") {
$bigAutocompleteContent.find("tr").removeClass("ct");
$bigAutocompleteContent.hide();
}
})
});
function associationalWord() {
$.ajax({
type: "post",
url: "Default.aspx",
data: { action: $("#txtName").val() },
success: function (msg) {
msg = JSON.parse(msg);
var cont = "<table style='width:100%'><tbody>";
for (var i = 0; i < msg.length; i++) {
cont += "<tr><td>" + msg[i].ProductName + "</td></tr>";
}
cont += "</tbody></table>";
$("#bigAutocompleteContent").html(cont);
$("#bigAutocompleteContent").show();
}
})
}
</script>
后台
protected void Page_Load(object sender, EventArgs e)
{
string method = Request.Form["action"];
if (!string.IsNullOrEmpty(method))
{
GetWord(method);
}
} public void GetWord(string text)
{
//获取数据
DefaultDa defaultDa = new DefaultDa();
DataTable dataTable = defaultDa.GetWord(text); object JSONObj = (Object)JsonConvert.SerializeObject(dataTable);
Response.Write(JSONObj);
Response.End();
}
还需要引用下,Newtonsoft.Json
.net 搜索联想词的更多相关文章
- Elasticsearch之联想词示例
public class LianXiangWord { private static RestClient client; static { client=RestClient.builder(ne ...
- python爬行动物集合360联想词搜索
想法和一些代码引用邸一幕python培训黄哥python爬虫联想词视频,但是太罗嗦.顺便整理,而到现在为止,360不傻.它已演变,用原来的方式,有些bug,这接着说. 正题例如以下: 语言:pytho ...
- python爬虫之採集——360联想词W2版本号
http://blog.csdn.net/recsysml/article/details/30541197,我的这个博文介绍了对应的简单的方法做一个联想词的爬虫,并且还承诺了下面优化: 下一版本号的 ...
- Eclipse用法和技巧二十七:定义自己的快速联想词
某天在调试代码的时候,虽然是android的project还是习惯的输入syso,然后在ALT+/一下.旁边的同事就问了一下,这个log打印输出的tag是什么.接着又问了为什么syso能够智能联想出这 ...
- Eclipse使用方法和技巧二十七:定义自己的高速联想词
某天在调试代码的时候.尽管是android的project还是习惯的输入syso.然后在ALT+/一下. 旁边的同事就问了一下,这个log打印输出的tag是什么. 接着又问了为什么syso可以智能联想 ...
- 网络系列之 jsonp 百度联想词
jsonp 可以跨域,ajax 不可以,ajax 会受到浏览器的同源策略影响,何为同源策略? 同源策略就是,如果 A 网站 想拿 B网站里的资源, 那么 有三个条件, 你得满足才能拿. 第一个:域名相 ...
- JavaScript实现搜索联想功能
-.虽然Jquery已经有了一个完整的包 实现前端搜索联想功能,但是出于学习还是想了解一下实现此功能的原理性 回想起来 实现此功能很简单,1.前端输入字符串 文本改变 异步请求服务器 将返回的资料显示 ...
- Selenium2+python自动化34-获取百度输入联想词
前言 最近有小伙伴问百度输入后,输入框下方的联想词如何定位到,这个其实难度不大,用前面所讲的元素定位完全可以定位到的. 本篇以百度输入框输入关键字匹配后,打印出联想词汇. 一.定位输入框联想词 1.首 ...
- Selenium2+python自动化34-获取百度输入联想词【转载】
前言 最近有小伙伴问百度输入后,输入框下方的联想词如何定位到,这个其实难度不大,用前面所讲的元素定位完全可以定位到的. 本篇以百度输入框输入关键字匹配后,打印出联想词汇. 一.定位输入框联想词 1.首 ...
- Elasticsearch实现搜索推荐词
本篇介绍的是基于Elasticsearch实现搜索推荐词,其中需要用到Elasticsearch的pinyin插件以及ik分词插件,代码的实现这里提供了java跟C#的版本方便大家参考. 1.实现的结 ...
随机推荐
- Ocelot的限流、熔断和负载均衡
一.限流 想要在Ocelot中设置限流,需要在设置如下绿色所示: { "GlobalConfiguration": { "RateLimitOptions": ...
- JVM Dump分析
Thread Dump介绍 Thread Dump是非常有用的诊断 Java应用问题的工具.每一个 Java虚拟机都有及时生成所有线程在某一点状态的 thread-dump的能力,虽然各个 Java虚 ...
- Nmap学习
Nmap学习 一.主机发现 1.全面扫描/综合扫描 nmap -A 192.168.142.201 2.Ping扫描 nmap -sP 192.168.142.0/24 3.免Ping扫描,穿透防火墙 ...
- vue中使用vue.extend在dom挂载vue实例
const CounterComponent = Vue.extend(Counter); this.vm = new CounterComponent({}).$mount('#container' ...
- 逍遥自在学C语言 | 关系运算符
前言 一.人物简介 第一位闪亮登场,有请今后会一直教我们C语言的老师 -- 自在. 第二位上场的是和我们一起学习的小白程序猿 -- 逍遥. 二.构成和表示方式 关系运算符的作用是判断符号两边大小的关系 ...
- Cesium案例(六) Time Dynamic Wheels
Cesium.Ion.defaultAccessToken = "token"; const viewer = new Cesium.Viewer( ...
- pandas小技巧
1. 删除列 import pandas as pd df.drop("Unnamed: 0", axis=1, inplace=True) 2. 转换列的格式 df[" ...
- go-easy-utils 2.0 正式发布,全面支持泛型和any
介绍 这是一个基于 Go 语言开发的通用数据类型处理工具类,帮助开发者在业务代码实现中处理常见的数据类型和数据操作.可以让您专注于您的业务代码的实现,而免去处理基本数据类型转换和验证的功能.该工具库无 ...
- 前后端分离 nginx 的配置
前端 nginx # 添加头部信息 proxy_send_timeout 30; # 后端服务器连接超时时间 proxy_read_timeout 30; # 后端服务器数据回传时间 proxy_co ...
- 【Java SE】集合
1.java集合框架 使用Array存储对象有一定的弊端.java集合就是一种容器,动态地存储多个对象,存储主要是内存层面的存储,不涉及到持久化的存储(txt,avi,数据库). ①一旦初始化好,数组 ...