自动补全(邮箱)



自动补全ui

一、调用autocomplete()

 

var host=['aa','aaa','aaaa','bbbbb'];

$('#email').autocomplete({

   source:host

});

二、修改autocomplete样式

autocomplete()属性

四、autocomplete()事件

 

 

邮箱自动补全

一、

$('#email').autocomplete({

   source:function(request,response){

      //获取用户输入的内容

      //alert(request.term);

      //绑定数据源,注意:response不会根据 你输入的数据过滤无关结果

      response(['aa','aaa','aaaa','bbb']);

   }

});

二、

$('#email').autocomplete({

   autoFocus:true,

   source:function(request,response){

      //获取用户输入的内容

      //alert(request.term);

      //绑定数据源,注意:response不会根据 你输入的数据过滤无关结果

      //response(['aa','aaa','aaaa','bbb']);

      var hosts=['qq.com','163.com','163.com','sina.com.cn','gmail.com','hotmail.com'],

          term=request.term,//获取用户输入的内容

          name=term,//邮箱用户名

          host='',//域名

          ix=term.indexOf('@')//@的位置

          ;

      result=[];//最终呈现的邮箱列表

     

      result.push(term);

      //当有@时候,重新分配用户名和域名

      if(ix>-1)//说明有@符号

      {

        name=term.slice(0,ix);

        host=term.slice(ix+1);

      }

      if(name){

        //如果用户已经输入@和后面的域名,那么就找到相关的域名提示,比如bnbbs@1,就提示bnbbs@163.com

        //如果用户没有输入@或后面的域名,那么就把所有的域名都提示出来

        var findedHosts=[];

        if(host){

   findedHosts=$.grep(hosts,function(value,index){

           returnvalue.indexOf(host)>-1;//若数组不为空

        });

        }else//数组为空时

        {

           findedHosts=hosts;

        }

        varfindedResult=$.map(findedHosts,function(value,index){

           return name+'@'+value;//返回一个新的数组

        });

        result=result.concat(findedResult);

      }

      response(result);

   }

});





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值