查找聯繫人

要在Contacts數據庫上進行搜索,可以使用contacts.find()方法,以下所示:
navigator.contacts.find(contactFields, onSuccess, onError, options);數據庫

這個例子顯示了以下內容:app

第1個參數用來給方法傳遞一組聯繫人字段。這些字段也將被返回。例如,若是想要的是人名、電子郵件地址和電話號碼,就應該在這裏指明。若是隻是想要聯繫人的id,能夠給這個參數傳遞一個空值。若是想要返回全部字段,能夠傳遞進["*"]。函數

第2個參數是success回調函數,它將接收一個正確的Contact對象,來保存要查找的聯繫人信息。oop

第3個參數是error回調函數,它將包含拋出的任何錯誤。this

第4個參數是一組能夠傳遞給find方法的選項。其中一個最常使用的是filter選項,它是一個能夠對Contacts數據庫進行過濾查詢的字符串。對象

如下是查找通信錄的一個示例:
function onSuccess(contacts) {
document.write(contacts.length + ' contacts found.');
for (var i=0; i<contacts.length; i++) {
       for (var j=0; j<contacts[i].emails.length; j++) {
             document.write("Email = " + contacts[i].emails[j].email);
         }
}
}字符串

function onError(contactError) {
     alert('Ooops!');
}get

// 查找電子郵件地址中帶有gmail的全部聯繫人
var myOptions = new ContactFindOptions();
myOptions.filter="gmail";
var myFields = ["emails"];
navigator.contacts.find(myFields, onSuccess, onError, myOptions);回調函數

 

例2:it

$("#page-contacts").live("pageinit",function(){
    var $page = $(this);
    var fields=["displayName","phoneNumbers","photos"];
    navigator.contacts.find(fields, function(contacts){
        console.log("檢索通信錄成功..." + contacts.length);
        var results=[];
        $.each(contacts,function(i,c){
            console.log("通信錄:"+c.displayName);
            results.push("<li><a href=''><h3>"+c.displayName+"</h3><p>"+c.phoneNumbers[0].value+"</p></a></li>");
        });
        $(".content-container",$page).append(results.join("")).listview("refresh");    }, function(){        alert("檢索通信錄失敗!");    },new ContactFindOptions());    });

相關文章
相關標籤/搜索