运用datalist标签实现用户的搜索列表
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标签实现用户的搜索列表的更多相关文章
- Struts2(六.用标签显示用户列表及Value Stack和Stack Context)
一.用Struts2标签显示用户列表 原理: 在struts中可以通过在action中将所有用户的信息存入到某个范围中,然后转向userlist.jsp,进行访问 原则: 在jsp网页上,尽量不要出现 ...
- HTML5 datalist 标签
以前需要用JS写一个自动完成组件(Suggest),很费劲.HTML5时代则不用了,直接使用datalist标签,直接减少了工作量.如下 <!DOCTYPE html> <html& ...
- datalist标签小结
在Web设计中,经常会用到如输入框的自动下拉提示,这将大大方便用户的输入.在以前,如果要实现这样的功能,必须要求开发者使用一些Javascript的技巧或相关的框架进行ajax调用,需要一定的编程工作 ...
- datalist标签 输入框候选
H5的datalist标签,可以给input输入框提供下拉选择列表,或输入提示功能. 写如下的datalist标签 <datalist id="car"> <op ...
- 【HTML5】<datalist>标签和<select>标签的比较
<select>标签: 注:该标签定义了下拉列表的实现 <select name = "location"> <option value = &quo ...
- 课时47.datalist标签(了解)
1.datalist标签 作用:给输入框绑定待选项 2.datalist格式: <datalist> <option>待选项内容</option> </dat ...
- jquery+php实现用户输入搜索内容时自动提示
index.html <html> <head> <meta charset=;} #search_auto li a:hover{background:#D8D ...
- vue 音乐App QQ音乐搜索列表最新接口跨域设置
在 webpack.dev.config.js中 'use strict' const utils = require('./utils') const webpack = require('webp ...
- 使用Spark进行搜狗日志分析实例——列出搜索不同关键词超过10个的用户及其搜索的关键词
package sogolog import org.apache.hadoop.io.{LongWritable, Text} import org.apache.hadoop.mapred.Tex ...
随机推荐
- 无限轮播的N+2 策略
N张照片把contentsSize设置为N+2个图片的宽度,例子如下,两端填充如图,当处于一端时,且即将进入循环状态的时候,如第二张图,从状态1滑动到状态2,在滑动结束的时候,将当前的位置直接转到状态 ...
- 好用的php类库和方法
1, /** * 将一个平面的二维数组按照指定的字段转换为树状结构 * * 用法: * @code php * $rows = array( * array('id' => 1, 'value' ...
- osg绘制一个球体
//By smells2 at Lab 2012-02-21#include <osg/Group>#include <osg/Geode>#include <osg/S ...
- [Android Pro] app_process command in Android
reference to : http://blog.csdn.net/wangkaiblog/article/details/46050587 本来以为存放在/systen/bin/下的monkey ...
- git安装--linux下的安装
一般linux自带git版本很旧,会有一定问题,可以先卸载系统自带git: yum remove git下载及安装git: wget https://github.com/git/git/archiv ...
- 将rabbitmq整合到Spring中手动Ack
如果要手动ack,需要将Listener container 的 acknowledge 设置为manul,在消费消息的类中需实现ChannelAwareMessageListener接口. over ...
- gcc创建和使用静态库、动态库
http://www.cnblogs.com/dyllove98/archive/2013/06/25/3155599.html 目录树结构: test/include/hello.h #ifdef ...
- sql中union和union all的用法
如果我们需要将两个select语句的结果作为一个整体显示出来,我们就需要用到union或者union all关键字.union(或称为联合)的作用是将多个结果合并在一起显示出来. union和unio ...
- python 取两数的百分比
Python (r266:, Jan , ::) [GCC (Red Hat -)] on linux2 Type "help", "copyright", & ...
- 无废话Android之内容观察者ContentObserver、获取和保存系统的联系人信息、网络图片查看器、网络html查看器、使用异步框架Android-Async-Http(4)
1.内容观察者ContentObserver 如果ContentProvider的访问者需要知道ContentProvider中的数据发生了变化,可以在ContentProvider 发生数据变化时调 ...