datalist是一个很强大的HTML5标签,支持一般类似于模糊查询,以前都是需要js来做的。下面是一个datalist配合js的小例子,主要是实现用户是否存在,以及添加过程中是否重复的判断。

首先是datalis里面绑好数据以后,当用户双击文本框时是可以出现选择下拉框的,输入的时候也得判断是否存在这个用户。具体js如下:

 function add_account(){
var account_name = $("#read_account").val();
var option = document.getElementsByTagName('option');
var sum = 0;
for(var i=0;i<option.length;i++){
if(account_name == option[i].value){
sum = 1;
}
}
if(sum == 0){
alert("此用户不存在!");
$("#read_account").val("");
}
else{
var flag = check(6, account_name);
if(flag.split('#')[0] == 'F'){
alert(flag.split("#")[1]);
}
else{
var text = $("#add_account").text();
if(text.match(account_name) == null){
$("#add_account").append(account_name + ",");
}
else{
alert("重复了");
}
}
}
}

主要是在datalist里面查找option选项里面有没有文本框输入的值,然后去判断如果没有则提醒没有该用户。
后面部分是为了完成点击添加按钮时,自动添加到下面的div里面。具体html如下:

 <input id="read_account" list="read_list" placeholder="输入用户名(双击可选择)"/>
<button onclick="add_account()">添加</button>
<datalist id="read_list">
<select id="" name="">
{%for account in accountlist%}
<option value="{{account.account_name}}" title="{{account.account_name}}({{account.account_nickname}}" > {{account.account_name}}({{account.account_nickname}})</option>
{%end%}
</select>
</datalist>
<div id="add_account" name="add_account" style="height:100px;width:300px;border:1px solid red;overflow-x:hidden"></div>

运用datalist标签实现用户的搜索列表的更多相关文章

  1. Struts2(六.用标签显示用户列表及Value Stack和Stack Context)

    一.用Struts2标签显示用户列表 原理: 在struts中可以通过在action中将所有用户的信息存入到某个范围中,然后转向userlist.jsp,进行访问 原则: 在jsp网页上,尽量不要出现 ...

  2. HTML5 datalist 标签

    以前需要用JS写一个自动完成组件(Suggest),很费劲.HTML5时代则不用了,直接使用datalist标签,直接减少了工作量.如下 <!DOCTYPE html> <html& ...

  3. datalist标签小结

    在Web设计中,经常会用到如输入框的自动下拉提示,这将大大方便用户的输入.在以前,如果要实现这样的功能,必须要求开发者使用一些Javascript的技巧或相关的框架进行ajax调用,需要一定的编程工作 ...

  4. datalist标签 输入框候选

    H5的datalist标签,可以给input输入框提供下拉选择列表,或输入提示功能. 写如下的datalist标签 <datalist id="car"> <op ...

  5. 【HTML5】<datalist>标签和<select>标签的比较

    <select>标签: 注:该标签定义了下拉列表的实现 <select name = "location"> <option value = &quo ...

  6. 课时47.datalist标签(了解)

    1.datalist标签 作用:给输入框绑定待选项 2.datalist格式: <datalist> <option>待选项内容</option> </dat ...

  7. jquery+php实现用户输入搜索内容时自动提示

    index.html <html> <head>     <meta charset=;} #search_auto li a:hover{background:#D8D ...

  8. vue 音乐App QQ音乐搜索列表最新接口跨域设置

    在 webpack.dev.config.js中 'use strict' const utils = require('./utils') const webpack = require('webp ...

  9. 使用Spark进行搜狗日志分析实例——列出搜索不同关键词超过10个的用户及其搜索的关键词

    package sogolog import org.apache.hadoop.io.{LongWritable, Text} import org.apache.hadoop.mapred.Tex ...

随机推荐

  1. IOS 推送消息 php做推送服务端

    IOS推送消息是许多IOS应用都具备的功能,最近也在研究这个功能,参考了很多资料终于搞定了,下面就把步骤拿出来分享下: iOS消息推送的工作机制可以简单的用下图来概括: Provider是指某个iPh ...

  2. asp.net DataSet数据导出到Excel中

    方法: [STAThread]///这是必须的    public override void VerifyRenderingInServerForm(System.Web.UI.Control co ...

  3. SSH详解

    Secure Shell (SSH) 是一个允许两台电脑之间通过安全的连接进行数据交换的网络协议.加密保证了数据的保密性和完整性.SSH采用公钥加密技术来验证远程主机,以及(必要时)允许远程主机验证用 ...

  4. ASP.NET SignalR 与 LayIM2.0 配合轻松实现Web聊天室(零) 前言

    前端时间听一个技术朋友说 LayIM 2.0 发布了,听到这个消息抓紧去官网看了一下.(http://layim.layui.com/)哎呀呀,还要购买授权[大家支持一下哦],果断买了企业版,喜欢钻研 ...

  5. mysql 得到重复的记录

    select devicetoken from client_user group by devicetoken having count(devicetoken)>1

  6. NYOJ题目74小学生算术

    aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAsYAAAI0CAIAAACRUHjwAAAgAElEQVR4nO3dO3LbyroG0DsJ5RqIYg

  7. jQuery - 4.简单选择器

    4.1 简单选择器   (1) :first 选取第一个元素.   (2) :last 选取最后一个元素.  (3) :not(选择器) 选取不满足"选择器"条件的元素   (4) ...

  8. mxnet环境搭建随记

    安装mxnet还是遇到不少麻烦事,现在简单记一下,挖个坑,后续详细补充,打算写一下我的mxnet探索之旅. 更新: 具体安装mxnet,cuda,opencv过程已经补坑——点击进入 不知道为什么,在 ...

  9. Task使用小结

    Task是.NET推出数据任务处理的工作类,Task的使用也被越来越多的人讲解,这里仅仅介绍Task的部分使用介绍: 1.Task简单创建 --无返回值 Task.Factory.StartNew(( ...

  10. 【PHP&&MySQL详解】

    PHP和MySQL是一对好搭档,PHP中有一个很大的扩展库专门针对对MySQL的操作.当然,作为一个PHP程序员,首先对MySQL的增删查改要非常熟悉才行. MySQL数据库的连接数大概在6w个左右, ...