Heim  >  Artikel  >  Web-Frontend  >  Ausführliche Erläuterung des HTML5-Adressbuch-Beispielcodes zum Abrufen von Informationen mehrerer angegebener Personen

Ausführliche Erläuterung des HTML5-Adressbuch-Beispielcodes zum Abrufen von Informationen mehrerer angegebener Personen

黄舟
黄舟Original
2017-03-25 10:36:172158Durchsuche

Dieser Artikel stellt hauptsächlich die detaillierte Erklärung des HTML5+-Adressbuchs vor, um die Informationen mehrerer bestimmter Personen zu erhalten. Es ist von großem praktischem Wert und Freunde in Not können darauf zurückgreifen.

In diesem Artikel wird das HTML5-Adressbuch zum Abrufen der Informationen mehrerer angegebener Personen vorgestellt. Die Details lauten wie folgt:

1. Abrufen der Informationen mehrerer Personen In das Adressbuch ist es notwendig, das Problem zu lösen, die Informationen mehrerer Personen zu erhalten. Ich habe die IDs und Anzeigenamen aller Kontakte im Adressbuch über die Anwendung plus.contacts.getAddressBook und address.find abgerufen und sie dann über die von mir geschriebene Adressbuch-Erfassungsseite angezeigt.

1. Um dieses Problem zu lösen, müssen Sie zunächst selbst ein js-Adressbuch schreiben, damit Sie die Initialen aller Ihrer Kontakte trennen und zu den gewünschten Initialen daneben springen können.

2. Lösen Sie das Problem, alle Kontaktinformationen zu erhalten

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. Importieren Sie mehrere ausgewählte persönliche Informationen aus dem Adressbuch: Die Lösung dieses Problems muss zuvor beim Erstellen der Adressbuchseite erfolgen Ich muss die ID des Kontakts auf der Seite platzieren (sie mithilfe der Anzeige ausblenden), damit ich die ID direkt abrufen und diese IDs in ein Array einfügen kann, wenn ich das ausgewählte Kontrollkästchen erhalte. Filtern Sie dann die Kontaktinformationen dieser IDs mithilfe der Anwendung plus.contacts.getAddressBook und address.find heraus.

1. Um das Problem der Verwendung von checkBox zum Abrufen der Kontakt-ID zu lösen, habe ich hier JQuery verwendet.

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

2. Um das Problem zu lösen, fügen Sie diese Indizes in „Suchen“ ein, um Informationen zu filtern, und entnehmen Sie die Kontaktinformationen unter einer bestimmten 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("打开通讯录错误");
                });

Verwandte Artikel:

php implementiert die Online-Adressbuchfunktion (Quellcode angehängt), Adressbuch-Quellcode

js implementiert den Index-Gleitanzeigeeffekt und den Gleitanzeige-Ankereffekt der Adresse Buch

Detailliertes Codebeispiel für die Verwendung von XML Data Island in Kombination mit Dom zum Erstellen eines Adressbuchs

Das obige ist der detaillierte Inhalt vonAusführliche Erläuterung des HTML5-Adressbuch-Beispielcodes zum Abrufen von Informationen mehrerer angegebener Personen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn