.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.实现的结 ...
随机推荐
- 【公式编辑测试】生成函数常用性质及其他(普通生成函数指数生成函数Dirichlet生成函数)
目录 定义 普通生成函数OGF 指数生成函数 EGF Dirichlet生成函数 Notation OGF OGF property some OGF instances EGF EGF proper ...
- urlopen()方法的源代码
import urllib.request # 获取目标网址 url = 'https://www.baidu.com/' # 添加请求头 headers = {'User-Agent': 'Mozi ...
- 浅谈Array --JavaScript内置对象
Array --JavaScript内置对象 描述 可以用一个变量存储多种数据类型的Array对象,Array不是关联数组,不能使用字符串作为索引访问数组元素,需要使用非负整数的下标访问数组中的元素. ...
- 探究for循环中的var与let的区别
首先饮用一篇大佬写的博客:for循环中let与var的区别,块级作用域如何产生与迭代中变量i如何记忆上一步的猜想 这篇博客对我有所启发,但是有点抽象. 再借用<JavaScript高级程序设计& ...
- el-tree组件过来吧默认打开全部子节点
//搜索到节点必须打开此节点所有子节点,因为默认是不会打开子节点的,所以手动设置打开的最高层级.本次我设置了最大四个层级 filterNode(value,data,node) { if(!value ...
- 全网最详细中英文ChatGPT-GPT-4示例文档-智能AI写作从0到1快速入门——官网推荐的48种最佳应用场景(附python/node.js/curl命令源代码,小白也能学)
目录 Introduce 简介 setting 设置 Prompt 提示 Sample response 回复样本 API request 接口请求 python接口请求示例 node.js接口请求示 ...
- etcd/raft选举源码解读
ETCD-raft笔记 0. 引言 该篇博客基于etcd v3.5.7版本,首先会简单介绍etcd/raft对Raft选举部分的算法优化,然后通过源码分析etcd/raft的选举实现. 1. etcd ...
- py文件转换为so文件
将py文件编译为so文件 利用上面代码生成so文件生成的文件不方便取放,名字也不一样 通过执行发现转换执行了下面三句 /usr/local/python3/bin/cython test.py gcc ...
- 你知道Vue响应式数据原理吗
1. Vue2的响应式式原理主要是通过Object.defineProperty的方法里面的setter和getter方法的观察者模式来实现.也就是在组件的初始话阶段给每一个data属性都注册一个se ...
- CSS—相对单位rem
一.概述 rem是一个相对长度单位,它的单位长度取决于根标签html的字体尺寸.rem即root em的意思,中文翻译为根em.浏览器的文本尺寸一般默认为16px,即默认情况下: 1rem = 16p ...