BootStrap学习系列之Bootstrap Typeahead 组件实现百度下拉效果(续)


Posted in Javascript onJuly 07, 2016

接着上篇的内容,在上篇给大家介绍了Bootstrap学习系列之使用 Bootstrap Typeahead 组件实现百度下拉效果

Bootstrap,来自 Twitter,是目前最受欢迎的前端框架。Bootstrap 是基于 HTML、CSS、JAVASCRIPT 的,它简洁灵活,使得 Web 开发更加快捷。

官方:http://twitter.github.io/typeahead.js/

示例:http://twitter.github.io/typeahead.js/examples/(本文展示:Open Source Projects by Twitter)

项目源码:https://github.com/twitter/typeahead.js(点击Download ZIP下载typeahead.js-master.zip)

先给大家展示下效果图:

BootStrap学习系列之Bootstrap Typeahead 组件实现百度下拉效果(续)

1.实现

HTML

提示:examples.css为实例中的css文件

<link type="text/css" href="@Url.Content("~/Scripts/typeahead/examples.css")" rel="stylesheet"/>
<script src="@Url.Content("~/Scripts/typeahead/typeahead.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/typeahead/hogan-2.0.0.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/typeahead/underscore-min.js")" type="text/javascript"></script>
<div>
<div style="margin: 10px 50px" class="col-md-3">
<div class="form-group example-twitter-oss">
<label class="col-md-4 control-label ">
姓名</label>
<div class="col-md-7">
@Html.TextBox("InputName", "", new { @class = "inputName form-control", placeholder = "请输入姓名" })
</div>
</div>
</div>
@Html.Hidden("getInputName", Url.Action("GetInputName"))
<script type="text/javascript">
$('.inputName').typeahead({
name: 'inputname',
remote: $("#getInputName").val() + '/?query=%QUERY',
template: ['<p class="repo-language">{{vipname}}</p>',
'<p class="repo-name">{{name}}</p>',
'<p class="repo-description">{{description}}</p>'
].join(''),
limit: 10,
engine: Hogan
});
</script>
</div>

控制器

#region 获取姓名提示下拉
/// <summary>
/// 获取姓名提示下拉
/// </summary>
/// <returns></returns>
public ActionResult GetInputName(string query)
{
var list = new List<TypeaheadModel>();
if (!string.IsNullOrWhiteSpace(query))
{
query = query.Trim();
foreach (var item in GetData())
{
if (item.name.Contains(query))
{
list.Add(item);
}
}
}
return Json(list, JsonRequestBehavior.AllowGet);
}
#endregion
public List<TypeaheadModel> GetData()
{
List<TypeaheadModel> list = new List<TypeaheadModel>();
TypeaheadModel model = new TypeaheadModel();
for (int i = 0; i < 5; i++)
{
model = new TypeaheadModel();
model.description = "D";
model.vipname = "V";
model.name = "A" + i.ToString();
model.value = "A" + i.ToString();//
list.Add(model);
}
for (int i = 3; i < 10; i++)
{
model = new TypeaheadModel();
model.description = "";
model.vipname = "";
model.name = "B" + i.ToString();
model.value = "B" + i.ToString();
list.Add(model);
}
return list;
}

模型

public class TypeaheadModel
{
public string name { get; set; }
public string vipname { get; set; }
public string description { get; set; }
/// <summary>
/// 选中后文本框的值
/// </summary>
public string value { get; set; }
}

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

Javascript 相关文章推荐
锋利的jQuery 要点归纳(三) jQuery中的事件和动画(下:动画篇)
Mar 24 Javascript
两个Javascript小tip资料
Nov 23 Javascript
为开发者准备的10款最好的jQuery日历插件
Feb 04 Javascript
在JavaScript里防止事件函数高频触发和高频调用的方法
Sep 06 Javascript
Node.js中使用jQuery的做法
Aug 17 Javascript
jQuery实现的自定义滚动条实例详解
Sep 20 Javascript
很棒的vue弹窗组件
May 24 Javascript
ReactJS实现表单的单选多选和反选的示例
Oct 13 Javascript
vue+vuex+axios+echarts画一个动态更新的中国地图的方法
Dec 19 Javascript
如何去除vue项目中的#及其ie9兼容性
Jan 11 Javascript
关于vue状态过渡transition不起作用的原因解决
Apr 09 Javascript
详解node和ES6的模块导出与导入
Feb 19 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
jQuery插件Flexslider实现图片轮播、图文结合滑动切换效果
Apr 16 #Javascript
You might like
PHPMyadmin 配置文件详解(配置)
2009/12/03 PHP
深入php多态的实现详解
2013/06/09 PHP
php强制更新图片缓存的方法
2015/02/11 PHP
php base64 编码与解码实例代码
2017/03/21 PHP
javascript入门·图片对象(无刷新变换图片)\滚动图像
2007/10/01 Javascript
走出JavaScript初学困境—js初学
2008/12/29 Javascript
自己写的兼容ie和ff的在线文本编辑器类似ewebeditor
2012/12/12 Javascript
javascript通过元素id和name直接取得元素的方法
2015/04/28 Javascript
jQuery结合CSS制作漂亮的select下拉菜单
2015/05/03 Javascript
Spring mvc 接收json对象
2015/12/10 Javascript
KnockoutJs快速入门教程
2016/05/16 Javascript
超全面的javascript中变量命名规则
2017/02/09 Javascript
jQuery插件zTree实现删除树节点的方法示例
2017/03/08 Javascript
微信小程序实现根据字母选择城市功能
2017/08/16 Javascript
jQuery轻量级表单模型验证插件
2018/10/15 jQuery
为vue项目自动设置请求状态的配置方法
2019/06/09 Javascript
vue实现购物车功能(商品分类)
2020/04/20 Javascript
Javascript实现秒表计时游戏
2020/05/27 Javascript
JavaScript中交换值的10种方法总结
2020/08/18 Javascript
[01:09:20]NB vs NAVI Supermajor小组赛A组 BO3 第二场 6.2
2018/06/03 DOTA
pygame实现弹力球及其变速效果
2017/07/03 Python
python环形单链表的约瑟夫问题详解
2018/09/27 Python
Django对数据库进行添加与更新的例子
2019/07/12 Python
Pandas操作CSV文件的读写实现方法
2019/11/13 Python
关于numpy.where()函数 返回值的解释
2019/12/06 Python
python scrapy重复执行实现代码详解
2019/12/28 Python
解决pycharm每次打开项目都需要配置解释器和安装库问题
2020/02/26 Python
html如何对span设置宽度
2019/10/30 HTML / CSS
暇步士官网:Hush Puppies
2016/09/22 全球购物
惠普墨西哥官方商店:HP墨西哥
2016/12/01 全球购物
西班牙在线宠物食品和配件商店:bitiba
2019/10/11 全球购物
安全生产专项整治方案
2014/05/06 职场文书
2016年优秀团支部事迹材料
2016/02/26 职场文书
分析Netty直接内存原理及应用
2021/06/14 Java/Android
Spring Boot 底层原理基础深度解析
2022/04/03 Java/Android
js前端设计模式优化50%表单校验代码示例
2022/06/21 Javascript