我得到联系人姓名,但不是号码。 我哪里错了?
这是代码。
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,删除了变量并改为警告它们。
答案 0 :(得分:1)
您没有告诉PhoneGap加载PhoneNumbers,您需要将其添加到必填字段数组中:
var fields = ["displayName", "name", "nickname", "phoneNumbers"];