Bootstrap学习系列之使用 Bootstrap Typeahead 组件实现百度下拉效果


Posted in Javascript onJuly 07, 2016

UnderScore官网:http://underscorejs.org/

参考文档:http://www.css88.com/doc/underscore/

页面代码:

@{
ViewBag.Title = "Index";
}
<script src="Scripts/bootstrap-typeahead.js"></script>
<script src="Scripts/underscore-min.js"></script>
<div>

简单使用

<div style="margin: 10px 50px">
<label for="product_search">
Product Search:
</label>
<input id="product_search" type="text" data-provide="typeahead" data-source='["DATA1", "DATA2", "DATA3"]' />
</div>

使用脚本填充数据

<div style="margin: 10px 50px">
<label for="product_search">
Product Search:
</label>
<input id="product_search_js" type="text" data-provide="typeahead">
</div>
<script type="text/javascript">
$(document).ready(function ($) {
$.fn.typeahead.Constructor.prototype.blur = function () {
var that = this;
setTimeout(function () { that.hide() }, 250);
};
$('#product_search_js').typeahead({
source: function (query, process) {
return ["JS数据1", "JS数据2", "JS数据3"];
},
highlighter: function (item) {
return "==>" + item + "<==";
},
updater: function (item) {
console.log("'" + item + "' selected."); //浏览器控制台输出
$("#product_search").val(item);
return item;
}
});
})
</script>

支持 Ajax 获取数据

<div style="margin: 10px 50px">
<label for="product_search">
Product Search:
</label>
<input id="product_search_ajax" type="text" data-provide="typeahead">
</div>
<script type="text/javascript">
$('#product_search_ajax').typeahead({
source: function (query, process) {
var parameter = { query: query };
$.post('@Url.Action("AjaxService")', parameter, function (data) {
process(data);
});
}
});
</script>

使用对象数据

<div style="margin: 10px 50px">
<label for="product_search">
Product Search:
</label>
<input id="product_search_object" type="text" data-provide="typeahead">
</div>
<script type="text/javascript">
$(function () {
var products = [
{
id: 0,
name: "object1",
price: 499.98
},
{
id: 1,
name: "object2",
price: 134.99
},
{
id: 2,
name: "object3",
price: 49.95
}
];
$('#product_search_object').typeahead({
source: function (query, process) {
var results = _.map(products, function (product) {
return product.name;
});
process(results);
},
highlighter: function (item) {
return "==>" + item + "<==";
},
updater: function (item) {
console.log("'" + item + "' selected.");
return item;
}
});
});
</script>
</div>

控制器

public ActionResult Index()
{
return View();
}
public ActionResult AjaxService()
{
string query = "";
if (!string.IsNullOrWhiteSpace(Request["Query"]))
query = Request["Query"].ToString();
var data = ("AJAX1,AJAX2,AJAX3").Split(',');
return Json(data);
}

效果图展示如下:

Bootstrap学习系列之使用 Bootstrap Typeahead 组件实现百度下拉效果

下面继续给大家介绍BootStrap学习系列之Bootstrap Typeahead 组件实现百度下拉效果(续)

以上所述是小编给大家介绍的Bootstrap学习系列之使用 Bootstrap Typeahead 组件实现百度下拉效果,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
jQuery.Uploadify插件实现带进度条的批量上传功能
Jun 08 Javascript
js定义类的几种方法(推荐)
Jun 08 Javascript
JavaScript中全选、全不选、反选、无刷新删除、批量删除、即点即改入库(在yii框架中操作)的代码分享
Nov 01 Javascript
JavaScript实现替换字符串中最后一个字符的方法
Mar 07 Javascript
angular.js+node.js实现下载图片处理详解
Mar 31 Javascript
JavaScript中立即执行函数实例详解
Nov 04 Javascript
webpack 打包压缩js和css的方法示例
Mar 20 Javascript
vue调试工具vue-devtools安装及使用方法
Nov 07 Javascript
vue微信分享出来的链接点开是首页问题的解决方法
Nov 28 Javascript
JS/HTML5游戏常用算法之路径搜索算法 A*寻路算法完整实例
Dec 14 Javascript
vue使用vuex实现首页导航切换不同路由的方法
May 08 Javascript
vuex管理状态 刷新页面保持不被清空的解决方案
Nov 11 Javascript
BootStrap学习系列之Bootstrap Typeahead 组件实现百度下拉效果(续)
Jul 07 #Javascript
jQuery之简单的表单验证实例
Jul 07 #Javascript
jQuery on()方法绑定动态元素的点击事件无响应的解决办法
Jul 07 #Javascript
Bootstrap3使用typeahead插件实现自动补全功能
Jul 07 #Javascript
Node.js DES加密的简单实现
Jul 07 #Javascript
使用bootstrap typeahead插件实现输入框自动补全之问题及解决办法
Jul 07 #Javascript
使用Bootstrap typeahead插件实现搜索框自动补全的方法
Jul 07 #Javascript
You might like
PHP安装攻略:常见问题解答(三)
2006/10/09 PHP
PHP中使用addslashes函数转义的安全性原理分析
2014/11/03 PHP
PHP基于单例模式实现的数据库操作基类
2016/01/15 PHP
php实现图片上传、剪切功能
2016/05/07 PHP
Ucren Virtual Desktop V2.0
2006/11/07 Javascript
javascript 实现父窗口引用弹出窗口的值的脚本
2007/08/07 Javascript
jquery动态增加text元素以及删除文本内容实例代码
2013/07/01 Javascript
捕获键盘事件(且兼容各浏览器)
2013/07/03 Javascript
iframe子页面获取父页面元素的方法
2013/11/05 Javascript
Javascript中的回调函数和匿名函数的回调示例介绍
2014/05/12 Javascript
js实现仿MSN带关闭功能的右下角弹窗代码
2015/09/04 Javascript
js实现的后台左侧管理菜单代码
2015/09/11 Javascript
js面向对象之常见创建对象的几种方式(工厂模式、构造函数模式、原型模式)
2015/11/09 Javascript
Bootstrap 组件之按钮(二)
2016/05/11 Javascript
JavaScript数组、json对象、eval()函数用法实例分析
2019/02/21 Javascript
如何检查一个对象是否为空
2019/04/11 Javascript
Electron 调用命令行(cmd)
2019/09/23 Javascript
使用 Github Actions 自动部署 Angular 应用到 Github Pages的方法
2020/07/20 Javascript
基于postman获取动态数据过程详解
2020/09/08 Javascript
[50:45]2018DOTA2亚洲邀请赛 4.6 淘汰赛 VP vs TNC 第一场
2018/04/10 DOTA
编写Python爬虫抓取暴走漫画上gif图片的实例分享
2016/04/20 Python
python分治法求二维数组局部峰值方法
2018/04/03 Python
python实现websocket的客户端压力测试
2019/06/25 Python
Django通过dwebsocket实现websocket的例子
2019/11/15 Python
Python操作dict时避免出现KeyError的几种解决方法
2020/09/20 Python
用纯css3实现的图片放大镜特效效果非常不错
2014/09/02 HTML / CSS
东芝官网商城:还原日式美学,打造美好生活
2018/12/27 全球购物
微软马来西亚官方网站:Microsoft马来西亚
2019/11/22 全球购物
资源环境与城市管理专业推荐信
2013/11/30 职场文书
酒店led欢迎词
2014/01/09 职场文书
演讲稿开场白台词
2014/08/25 职场文书
政协会议宣传标语
2014/10/09 职场文书
2014年标准化工作总结
2014/12/17 职场文书
关于颐和园的导游词
2015/01/30 职场文书
Python如何使用logging为Flask增加logid
2021/03/30 Python
36个正则表达式(开发效率提高80%)
2021/11/17 Javascript