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 相关文章推荐
提示$ is not defined错误分析及解决
Apr 09 Javascript
兼容所有浏览器的js复制插件Zero使用介绍
Mar 19 Javascript
javascript实用方法总结
Feb 06 Javascript
JS面向对象(3)之Object类,静态属性,闭包,私有属性, call和apply的使用,继承的三种实现方法
Feb 25 Javascript
jQuery中ztree 点击文本框弹出下拉框的实例代码
Feb 05 Javascript
配置一个vue3.0项目的完整步骤
Apr 26 Javascript
微信小程序跳转到其他网页(外部链接)的实现方法
Sep 20 Javascript
详解小程序云开发攻略(解决最棘手的问题)
Sep 30 Javascript
js实现的订阅发布者模式简单示例
Mar 14 Javascript
vue-cli3自动消除console.log()的调试信息方式
Oct 21 Javascript
Vue自定义表单内容检查rules实例
Oct 30 Javascript
js实现碰撞检测
Jan 29 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
1 Tube Radio
2021/03/02 无线电
window+nginx+php环境配置 附配置搭配说明
2010/12/29 PHP
使用php伪造referer的方法 利用referer防止图片盗链
2014/01/20 PHP
php基于自定义函数记录log日志方法
2017/07/21 PHP
浅谈PHP中的Trait使用方法
2019/03/22 PHP
如何在Laravel5.8中正确地应用Repository设计模式
2019/11/26 PHP
html 锁定页面(js遮罩层弹出div效果)
2009/10/27 Javascript
JavaScript常用脚本汇总(二)
2015/03/04 Javascript
Nodejs如何复制文件
2016/03/09 NodeJs
sso跨域写cookie的一段js脚本(推荐)
2016/05/25 Javascript
JavaScript——DOM操作——Window.document对象详解
2016/07/14 Javascript
微信小程序使用第三方库Immutable.js实例详解
2016/09/27 Javascript
微信小程序开发之数据存储 参数传递 数据缓存
2017/04/13 Javascript
Agularjs妙用双向数据绑定实现手风琴效果
2017/05/26 Javascript
详解用vue编写弹出框组件
2017/07/04 Javascript
Javascript(es2016) import和require用法和区别详解
2017/08/11 Javascript
让网站自动生成章节目录索引的多个js代码
2018/01/07 Javascript
vue2.0 element-ui中el-select选择器无法显示选中的内容(解决方法)
2018/08/24 Javascript
如何使用pm2快速将项目部署到远程服务器
2019/03/12 Javascript
node.js使用fs读取文件出错的解决方案
2019/10/23 Javascript
[52:03]Secret vs VG 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/20 DOTA
Python正则表达式使用经典实例
2016/06/21 Python
Python实现求解一元二次方程的方法示例
2018/06/20 Python
selenium与xpath之获取指定位置的元素的实现
2021/01/26 Python
HTML5 与 XHTML2
2008/10/17 HTML / CSS
Java语言程序设计测试题改错题部分
2014/07/22 面试题
大学军训感言
2014/01/10 职场文书
汉语言文学职业规划
2014/02/14 职场文书
幼儿园安全生产月活动总结
2014/07/05 职场文书
小学趣味运动会加油稿
2014/09/25 职场文书
老人与海读书笔记
2015/06/26 职场文书
关于法制教育的宣传语
2015/07/13 职场文书
在酒桌上的敬酒词
2015/08/12 职场文书
SQL Server——索引+基于单表的数据插入与简单查询【1】
2021/04/05 SQL Server
vue/cli 配置动态代理无需重启服务的方法
2022/05/20 Vue.js
MySQL数据库安装方法与图形化管理工具介绍
2022/05/30 MySQL