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:ajax实现翻页无刷新功能代码
Aug 05 Javascript
js里取容器大小、定位、距离等属性搜集整理
Aug 19 Javascript
js对列表中第一个值处理与jsp页面对列表中第一个值处理的区别详解
Nov 05 Javascript
JavaScript中this关键词的使用技巧、工作原理以及注意事项
May 20 Javascript
JavaScript比较两个对象是否相等的方法
Feb 06 Javascript
javascript定时器完整实例
Feb 10 Javascript
jquery选择器简述
Aug 31 Javascript
javascript实现checkbox复选框实例代码
Jan 10 Javascript
Bootstrap组件系列之福利篇几款好用的组件(推荐二)
Jul 12 Javascript
详解Vue-cli webpack移动端自动化构建rem问题
Apr 07 Javascript
解决使用layui对select append元素无效或者未及时更新的问题
Sep 18 Javascript
Layui动态生成select下拉选择框不显示的解决方法
Sep 24 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隐形一句话后门,和ThinkPHP框架加密码程序(base64_decode)
2011/11/02 PHP
非常实用的php弹出错误警告函数扩展性强
2014/01/17 PHP
thinkPHP5.0框架模块设计详解
2017/03/18 PHP
PHP调用微博接口实现微博登录的方法示例
2018/09/22 PHP
Laravel框架基于ajax实现二级联动功能示例
2019/01/17 PHP
jQuery 属性选择器element[herf*='value']使用示例
2013/10/20 Javascript
js获取当前月的第一天和最后一天的小例子
2013/11/18 Javascript
Js判断CSS文件加载完毕的具体实现
2014/01/17 Javascript
jQuery验证插件 Validate详解
2014/11/20 Javascript
JavaScript实现的简单拖拽效果
2015/06/01 Javascript
jquery实现图片放大镜功能
2015/11/23 Javascript
卸载安装Node.js与npm过程详解
2016/08/15 Javascript
KnockoutJS 3.X API 第四章之click绑定
2016/10/10 Javascript
JavaScript触发onScroll事件的函数节流详解
2016/12/14 Javascript
新手必须知的Node.js 4个JavaScript基本概念
2018/09/16 Javascript
jQuery事件blur()方法的使用实例讲解
2019/03/30 jQuery
python实现清屏的方法
2015/04/30 Python
解决seaborn在pycharm中绘图不出图的问题
2018/05/24 Python
Python迭代器与生成器基本用法分析
2018/07/26 Python
python 提取key 为中文的json 串方法
2018/12/31 Python
python用什么编辑器进行项目开发
2020/06/17 Python
python switch 实现多分支选择功能
2020/12/21 Python
利用CSS3参考手册和CSS3代码生成工具加速来学习网页制
2012/07/11 HTML / CSS
基于HTML5 Canvas 实现弹出框效果
2017/06/05 HTML / CSS
西班牙香水和化妆品连锁店:Druni
2019/05/05 全球购物
应届生求职信写作技巧
2013/10/24 职场文书
安全教育心得体会
2013/12/29 职场文书
中英文求职信范文
2014/01/27 职场文书
大专生自我评价
2014/01/28 职场文书
管理提升方案
2014/06/04 职场文书
机械工程师岗位职责
2014/06/16 职场文书
个人投资合作协议书
2014/10/12 职场文书
2015年国庆节演讲稿范文
2015/07/30 职场文书
《富饶的西沙群岛》教学反思
2016/02/16 职场文书
IDEA使用SpringAssistant插件创建SpringCloud项目
2021/06/23 Java/Android
win11无法登录onedrive错误代码0x8004def7怎么办 ?
2022/04/05 数码科技