详解HTML5通信录获得特定好几个人的信息内容

日期:2021-02-27 类型:科技新闻 

关键词:微信小程序页面设计,python小程序,小程序首页模板,如何建立微信小程序,怎么做微信小程序

本文详细介绍了HTML5通信录获得特定好几个人的信息内容,实际以下:

1、获得好几个人的信息内容:要处理通信录导入好几个人的信息内容以前,要处理获得好几个人的信息内容。我根据plus.contacts.getAddressBook和address.find的套用把通信录里边的全部联络人的id和displayName获得出来,随后根据自身写的通信录获得网页页面显示信息出来。

1、处理这个难题最先你要自身写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) {

    });

2、从通信录导入好几个选定的本人信息内容:处理这个难题在先前建立通信录网页页面的情况下就1定要把联络人的id放在在网页页面上(应用display掩藏),这样我获得被选定的checkBox的情况下便可以立即获得id,而且把这些id放到1个数字能量数组里边。再根据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  ) {//循环系统所选择的联络人,记得循环系统1定要放在这里,1刚开始我放在        plus.contacts.getAddressBook外面是不正确
                        addressbook.find(null, function(contacts) {
                            console.log("进到查寻");
                            for(var i = 0; i < contacts.length; i  ) {//不管是不是为好几个信息内容,1定要循环系统数字能量数组
                                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 = {//把全部信息内容放到1个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("开启通信录不正确");
                });

根据以上编码便可以获得到了好几个联络人的信息内容,大伙儿能够尝试1下。期待对大伙儿的学习培训有一定的协助,也期待大伙儿多多适用脚本制作之家。