千家信息网

HTML5如何实现通讯录获取指定多个人的信息

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,这篇文章将为大家详细讲解有关HTML5如何实现通讯录获取指定多个人的信息 ,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一、获取多个人的信息:要解决通讯录导入多个人
千家信息网最后更新 2026年11月02日HTML5如何实现通讯录获取指定多个人的信息

这篇文章将为大家详细讲解有关HTML5如何实现通讯录获取指定多个人的信息 ,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

一、获取多个人的信息:要解决通讯录导入多个人的信息之前,要解决获取多个人的信息。我通过plus.contacts.getAddressBook和address.find的套用把通讯录里面的所有联系人的id和displayName获取出来,然后通过自己写的通讯录获取页面显示出来。

1、解决这个问题首先你要自己写一个js通讯录,这样可以把你所有联系人首字母分离出来,并且旁边可以跳转到你要的首字母。

2、解决获取所有联系人信息

plus.contacts.getAddressBook(plus.contacts.ADDRESSBOOK_PHONE, function(addressbook) { //获取通讯录信息                // 可通过addressbook进行通讯录操作                addressbook.find(null, function(contacts) {                    var username = new Array();                    var LinkList = new LinkedList();                    if(contacts.length > 0) { //获取当前通讯录里面所有人                        for(var i = 0; i < contacts.length; i  ) {                            username[i] = contacts[i].displayName   "-"   contacts[i].id; //连接id和username,为后面筛选最准备                        }                        //这下面的代码是把所有联系人的信息分类,这就涉及到了自己写的JS页面代码                        LinkList = sortPY(username); //把联系人数组分类                        //LinkList.show();                        createLiCheckBox(LinkList); //分类信息显示至页面,我使用checkBox进行多个联系人选择                    }                }, function(e) {                    alert("Find contact error: "   e.message);                });            }, function(e) {    });

二、从通讯录导入多个选定的个人信息:解决这个问题在先前创建通讯录页面的时候就一定要把联系人的id放在在页面上(使用display隐藏),这样我获取被选中的checkBox的时候就可以直接获取id,并且把这些id放到一个数组里面。再通过plus.contacts.getAddressBook和address.find的套用把这些id的联系人信息筛选出来。

1、解决使用checkBox获取联系人id,这里我使用了JQuery。

//筛选已经被选中的checkbox    $("input:checked").each(function() {            var index = $(this).parent().prev().children('label').text(); //获取id            var name = $(this).parent().prev().children('p').text(); //获取姓名            username.push(name);            usernameIndex.push(index);    });

2、解决把这些index放到find里面进行筛选信息,把特定id下面的联系人信息拿出来

plus.contacts.getAddressBook(plus.contacts.ADDRESSBOOK_PHONE, function(addressbook) { //获取通讯录信息            for(var j = 0; j < username.length; j  ) {//循环所选取的联系人,记得循环一定要放在这里,一开始我放在        plus.contacts.getAddressBook外面是错误                        addressbook.find(null, function(contacts) {                            console.log("进入查询");                            for(var i = 0; i < contacts.length; i  ) {//无论是否为多个信息,一定要循环数组                                console.log("进入循环");                                //var id = contacts[i].id;                                var displayname = contacts[i].displayName;                                var phone = "";                                var emails = "";                                var dates = "";                                var remark = "";                                if(contacts[i].phoneNumbers.length > 0) {//这里需要判断是否为空,为空的数组没有index=0;                                    phone = contacts[i].phoneNumbers[0].value;                                } else {                                    phone = contacts[i].phoneNumbers;                                }                                if(contacts[i].emails.length > 0) {//这里需要判断是否为空,为空的数组没有index=0;                                    emails = contacts[i].emails[0].value;                                } else {                                    emails = contacts[i].emails;                                }                                var dateNum = new Date(contacts[i].birthday);//这里的birthday是number类型!!!官方手册坑爹?                                dates = dateNum.getFullYear()   "."   (dateNum.getMonth()   1)   "."   dateNum.getDate();                                remark = contacts[i].note;                                var getContact = {//把所有信息放到一个json里面                                    contactName: displayname,                                    sex: "",                                    department: "",                                    positions: "",                                    tel: "",                                    phone: phone,                                    eMail: emails,                                    birthday: dates,                                    hobby: "",                                    remark: remark                                };                                //这下面是我的业务代码了,这里大家可以写自己的信息                                //createContactTable(db);                                //InsertContact(db, getContact); //多个信息插入有线程安全的问题出现!!!!!!!                            }                            //console.log(username.length);                                                 }, function(e) {                            console.log("查询错误");                        }, {                                                           //这里面的筛选非常重要!!!这样才能选出匹配的信息                            filter: [{                                logic: "or",                                field: "id",                                value: usernameIndex[j]                            }],                            multi: false                        });                    }                }, function(e) {                    console.log("打开通讯录错误");                });

关于"HTML5如何实现通讯录获取指定多个人的信息 "这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

信息 通讯 通讯录 联系 联系人 多个 页面 数组 代码 篇文章 错误 问题 面的 分类 字母 时候 更多 循环 查询 不错 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网最新的科技 互联网最新的科技有限公司 科技类互联网 科技互联网公司logo 互联网科技公司介绍 互联网汽车科技小镇 随着互联网科技发展 中化能源互联网科技招聘 互联网科技公司有风险吗 新兴科技互联网创新大赛颁奖典礼 注册互联网科技公司经营范围大全 国大互联网教育科技有限公司工作 互联网金融科技名词解释 工业互联网展湾科技股份有限公司 上海科技产业互联网平台 黑科技 体验场景 互联网大会 上海创道互联网络科技有限公司 科技互联网企业在行动 互联网科技创业有什么好项目 恒生科技互联网指数十大成分股 广州百单互联网科技有限公司 美国互联网科技巨头监管 华中科技大学互联网 天下捷融互联网科技 科技互联网创业计划书 佰商互联网科技有限公司 成都互联网科技公司100强 南通创西澳互联网科技有限公司 第三届互联网大会安防黑科技 杭州融税互联网科技有限公司
0