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(1.3.2) 7行代码搞定跟随屏幕滚动的层
May 21 Javascript
浅谈JavaScript函数参数的可修改性问题
Dec 05 Javascript
Vue.js每天必学之内部响应式原理探究
Sep 07 Javascript
JavaScript图片处理与合成总结
Mar 04 Javascript
webpack4.x开发环境配置详解
Aug 04 Javascript
基于vue2.0的活动倒计时组件countdown(附源码下载)
Oct 09 Javascript
Javascript实现动态时钟效果
Nov 17 Javascript
jQuery实现的简单日历组件定义与用法示例
Dec 24 jQuery
react实现antd线上主题动态切换功能
Aug 12 Javascript
Layui多选只有最后一个值的解决方法
Sep 02 Javascript
layui默认选中table的CheckBox复选框方法
Sep 19 Javascript
JavaScript实现串行请求的示例代码
Sep 14 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
PHP5常用函数列表(分享)
2013/06/07 PHP
使用PHP遍历文件目录与清除目录中文件的实现详解
2013/06/24 PHP
CodeIgniter框架URL路由总结
2014/09/03 PHP
php多重接口的实现方法
2015/06/20 PHP
PHP回调函数概念与用法实例分析
2017/11/03 PHP
php使用filter_var函数判断邮箱,url,ip格式示例
2019/07/06 PHP
PHP超级全局变量【$GLOBALS,$_SERVER,$_REQUEST等】用法实例分析
2019/12/11 PHP
JavaScipt基本教程之JavaScript语言的基础
2008/01/16 Javascript
xml文档转换工具,附图表例子(hta)
2010/11/17 Javascript
JS分割字符串并放入数组的函数
2011/07/04 Javascript
使用Jquery Aajx访问WCF服务(GET、POST、PUT、DELETE)
2012/03/16 Javascript
jquery插件制作 手风琴Panel效果实现
2012/08/17 Javascript
js数组方法扩展实现数组统计函数
2014/04/09 Javascript
javascript实现根据3原色制作颜色选择器的方法
2015/07/17 Javascript
Eclipse编辑jsp、js文件时卡死现象的解决办法汇总
2016/02/02 Javascript
bootstrap3 dialog 更强大、更灵活的模态框
2017/04/20 Javascript
vue实现学生录入系统之添加删除功能
2018/07/11 Javascript
webpack4.x下babel的安装、配置及使用详解
2019/03/07 Javascript
JavaScript中AOP的实现与应用
2019/05/06 Javascript
vue与iframe之间的信息交互的实现
2020/04/08 Javascript
在Uni中使用Vue的EventBus总线机制操作
2020/07/31 Javascript
[42:00]完美世界DOTA2联赛PWL S3 Phoenix vs INK ICE 第一场 12.13
2020/12/17 DOTA
python不带重复的全排列代码
2013/08/13 Python
python批量提交沙箱问题实例
2014/10/08 Python
Python实现快速排序算法及去重的快速排序的简单示例
2016/06/26 Python
python读取视频流提取视频帧的两种方法
2020/10/22 Python
用Python写脚本,实现完全备份和增量备份的示例
2018/04/29 Python
对IPython交互模式下的退出方法详解
2019/02/16 Python
django之对FileField字段的upload_to的设定方法
2019/07/28 Python
德国体育用品网上商店:SC24.com
2016/08/01 全球购物
大学生个人求职口试自我评价
2014/02/16 职场文书
2014年服装销售工作总结
2014/11/27 职场文书
拾金不昧感谢信范文
2015/01/21 职场文书
2015年高中班主任工作总结
2015/04/30 职场文书
数据库连接池
2021/04/06 MySQL
KVM基础命令详解
2022/04/30 Servers