电话间隙:获取联系人姓名,但不能获取号码

Phonegap: Getting contact name, but not a number

本文关键字:获取 但不能 号码 联系人 电话间 间隙 电话      更新时间:2023-09-26

我得到的是联系人姓名,但不是号码。我哪里错了?

这是代码。

function loadPhoneContacts() {
    alert("Entering contacts");
    var options = new ContactFindOptions();
    options.filter="";
    options.multiple = true;
    var fields = ["displayName", "name", "nickname"];
    navigator.contacts.find(fields, onSuccessOfLoadContacts, onErrorOfLoadContacts, options);
}
function onSuccessOfLoadContacts(contacts) {
    alert("Got '" + contacts.length + "' contacts.");
    for (var i=0; i<contacts.length; i++) {
        var contactname =  contacts[i].name.formatted;
        alert(ContactName + " has " + contacts[i].phoneNumbers.length + " numbers");
        alert(contacts[i].phoneNumbers[1].value);
            for (var j=0; j<contacts[i].phoneNumbers.length; j++) {
                contactnumber = contacts[i].phoneNumbers[j].value;
                alert("Got number:" + contactnumber);
            }

    }
}
function onErrorOfLoadContacts(contactError) {
    alert('onError!');
}

第二个for循环中的警报不会显示。

我是PG Noob。

这是更新的(不工作)代码:

function loadPhoneContacts() {
    var options = new ContactFindOptions();
    options.filter="";
    options.multiple = true;
    var fields = ["displayName", "name", "nickname", "phoneNumbers"];
    navigator.contacts.find(fields, onSuccessOfLoadContacts, onErrorOfLoadContacts, options);
}
// onSuccess: Get a snapshot of the current contacts
//
function onSuccessOfLoadContacts(contacts) {

    for (var i=0; i<contacts.length; i++) {
        alert(contacts[i].name.formatted);
            for (var j=0; j<contacts[i].phoneNumbers.length; j++) {
                alert(contacts[i].phoneNumbers[j].value);
            }
    }
}
// onError: Failed to get the contacts
//
function onErrorOfLoadContacts(contactError) {
    alert('onError!');
}

在var字段中添加了phoneNumbers,删除了变量并提醒它们。

您没有告诉PhoneGap加载PhoneNumbers,您需要将其添加到所需的字段数组中:

var fields = ["displayName", "name", "nickname", "phoneNumbers"];
相关文章: