有一个需求  需要做一个input 框  点击出现列表

于是想到了  datalist控件

    <input type="text" list="itemlist" name="" class="search" >
<datalist id="itemlist">
<option>常用001</option>
<option>item2</option>
<option>item3</option>
<option>item4</option>
<option>item5</option>
<option>item6</option>
</datalist>

于是乎看了 张大神的文章

http://www.zhangxinxu.com/wordpress/2013/03/html5-datalist-%E5%AE%9E%E9%99%85%E5%BA%94%E7%94%A8-%E5%8F%AF%E8%A1%8C%E6%80%A7/

学习了 怎么匹配到邮箱 但是   默认的灰色 边框去不掉 还是有很大局限性

于是只能看自己的了

代码 部分 :实现传值 的问题

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="maximum-scale=1.0,minimum-scale=1.0,user-scalable=0,width=device-width,initial-scale=1.0"/>

<title>搜索框</title>
<style>
.input-box {
position: relative;
display: inline-block;
}

.input-box .input {
background-color: transparent;
background-image: none;
border: 1px solid #ccc;
border-radius: 4px;
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset;
color: #555;
display: block;
font-size: 14px;
line-height: 1.42857;
padding: 6px 6px;
transition: border-color 0.15s ease-in-out 0s, box-shadow 0.15s ease-in-out 0s;
width: 200px;
display: inline;
position: relative;
z-index: 1;
}

.tip-l {
width: 0;
height: 0;
border-left: 5px solid transparent;
border-right: 5px solid transparent;
border-top: 10px solid #555;
display: inline-block;
right: 10px;
z-index: 0;
position: absolute;
top: 12px;
}

.dropdown {
position: absolute;
top: 32px;
left: 0px;
width: 212px;
background-color: #FFF;
border: 1px solid #23a8ce;
border-top: 0;
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset;
z-index: 999;
padding: 0;
margin: 0;
}

.dropdown li {
display: block;
line-height: 1.42857;
padding: 0 6px;
min-height: 1.2em;
cursor: pointer;
}

.dropdown li:hover {
background-color: #23a8ce;
color: #FFF;
}
</style>

<!-- // <script src="../js/jquery-2.1.0.js"></script> -->
<script src="http://libs.baidu.com/jquery/2.1.4/jquery.min.js"></script>

</head>
<body>

<div class="input-box">
<input type="text" class="input" value="Holle Word" />
<span class="tip-l"></span>
<ul class="dropdown">
<li >Holle Word</li>
<li >这是一个测试</li>
<li >简单的dome</li>
</ul>
</div>

</body>

<script>

 var isBox = false; // 定义一个触发焦点事件的开关,默认为不开启状态 || 也可以给input设置一个属性,来判断
$(".dropdown").hide();

$(".input").focus(function () { // input绑定焦点事件,触发时打开焦点开关
$(this).siblings(".dropdown").show();
isBox = true;
});
$(".input-box").mousemove(function () { // 鼠标进入input-box区域内打开焦点开关
isBox = true;
});
$(".input-box").mouseout(function () { // 鼠标离开input-box区域内关闭焦点开关
isBox = false;
});

$(".input").blur(function () { // input失去焦点时通过焦点开关状态判断鼠标所在区域
if (isBox == true) return false;
$(this).siblings(".dropdown").hide();
});

$(".dropdown").find('li').each(function () { // 传值给input,同时关闭焦点开关
$(this).on("click", function () {
isBox = false;
var text = $(this).text();
$(this).parent().siblings(".input").val(text);

$(".dropdown").hide();

})
})

</script>
</html>


input 下拉框 的实践的更多相关文章

  1. Bootstrap modal模态框关闭时,combobox input下拉框仍然保留在页面上

    问题描述: 当点击模态框的关闭按钮时,下拉框中的内容没有消失,而是移动到了页面左上角 分析:这个问题的定位在于是用的哪种模态框,bootstrap和easyui都可以实现模态框,但是两个方法实现的模态 ...

  2. jquery input 下拉框(模拟select控件)焦点事件

    本章主要讲解如何实现select下拉列表可输入效果 ps:input提供输入,然后用ul去模拟一个select下拉列表效果即可,关键在于点击div之外的地方隐藏ul,下面是html基本结构: < ...

  3. input下拉框

    用Html5和css.js写的,引用的bootstrap和jquery文件请各位看客自己去下载

  4. jquery div 下拉框焦点事件

    这章与上一张<jquery input 下拉框(模拟select控件)焦点事件>类似 这章讲述div的焦点事件如何使用 div的焦点事件与input的焦点事件区别在于 需要多添加一个属性: ...

  5. 用div,ul,input模拟select下拉框

    <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...

  6. struts2 jsp表单提交后保留表单中输入框中的值 下拉框select与input

    原文地址:struts2 jsp表单提交后保留表单中输入框中的值 下拉框select与input jsp页面 1     function dosearch() {2         if ($(&q ...

  7. 使用jquery-combobox实现select下拉框多选之后,如何将下拉框的值传给input隐藏域

    我在之前的一篇博文中eaeyui-combobox实现组合查询(即实现多个值得搜索)地址:http://www.cnblogs.com/dushan/p/4778897.html 实现了select下 ...

  8. 【jQuery获取下拉框select、单选框radio、input普通框的值和checkbox选中的个数】

    radio单选框:name属性相同 <input type="radio" id="sp_type" name="p_type" va ...

  9. jquery.editable-select 可编辑下拉框之获取select值和input值

    使用jquery.editable-select可以实现可编辑下拉框的功能,但需要先导入jquery.js,jquery.editable-select.css,jquery.editable-sel ...

随机推荐

  1. [Selenium]如何实现上传本地文件

    public void uploadLocalFileToServer(String uploadFileName){ String AutomationPath = System.getProper ...

  2. 通过BeanShell获取UUID并将参数传递给Jmeter

    有些HTTPS请求报文的报文体中包含由客户端生成的UUID,在用Jmeter做接口自动化测试的时候,因为越过了客户端,直接向服务器端发送报文,所以,需要在Jmeter中通过beanshell获取UUI ...

  3. urlrewritefilter 本地windowsxp 上正常 使用 ,但是 到linux服务器 上 则时好时坏 ,不起作用

    可能原因: tuckey.org 无法正常访问 ,urlrewrite 配置 网络 dtd 无法下载 .. 先把 urlrewrite 日志 配置好: <filter> <filte ...

  4. event对象的理解

    0.给对象绑定事件准确的说是给对象事件绑定事件函数 1.event:事件对象,当一个事件发生的时候,和当前这个对象发生的事件有关的信息都会被i临时保存到event对象中 2.event对象必须在一个事 ...

  5. 如何优化Mysql数据库

    1.添加主键ID 2.尽量避免使用select * form table 3.创建索引     对于查询占主要的应用来说,索引显得尤为重要.很多时候性能问题很简单的就是因为我们忘了添加索引而造成的,或 ...

  6. 2018.10.16 NOIP模拟 长者(主席树+hash)

    传送门 考试的时候开始sb的以为需要可持久化trietrietrie树,发现建树时空都是O(n2)O(n^2)O(n2)的. 然后发现由于每次只从原来的字符串改一个字符. 因此直接主席树维护区间has ...

  7. [GO]关于go的waitgroup

    watigroup是用来控制一组goroutine的,用来等待一组goroutine结束 比如关于kafka的消费者代码除了生硬的让程序等待一个小时,也可以这样写 package main impor ...

  8. 电信网上营业厅-客户充值缴费时间段数据挖掘--spss

    最近研究分析了“云南电信网上营业厅”e9宽带续约缴费的数据,目前宽带续约量为171人,今天需要谈论的是:如何利用SPSS挖掘出“客户充值缴费的时间段”客户喜欢在哪个时间段来网厅进行充值缴费 云南电信网 ...

  9. _RecordsetPtr使用方法

    _variant_t vUsername,vID,vname; //变量声明 _RecordsetPtr m_pRecordset;     //记录集 CString strid; _Connect ...

  10. Microsoft SQL Server 2012 管理 (1): 安装配置SQL Server 重点

    SQL Server 可以在实例,数据库,列,查询分别指定排序规则 /* Module 1 - working with Clollations */ -- 1.1 Obtain the Instan ...