使用科尔多瓦在安卓中无法正常工作,从手机中获取联系人
Call not working in android using cordova, grabbing contacts from phone
我想通过单击链接拨打电话号码,但应从电话中检索联系人。 所以我为此实现了一个代码。但是电话正在打开拨号器,但我检索到的联系号码丢失了。有什么建议吗?
<!DOCTYPE html>
<html>
<head>
<title>Contact Example</title>
<script type="text/javascript" charset="utf-8" src="cordova-1.8.0.js"></script>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="jquery.mobile-1.1.0.min.css" />
<script src="jquery-1.7.1.min.js"></script>
<script src="jquery.mobile-1.1.0.min.js"></script>
<script type="text/javascript" charset="utf-8">
// Wait for Cordova to load
//
document.addEventListener("deviceready", onDeviceReady, false);
// Cordova is ready
//
function onDeviceReady() {
// specify contact search criteria
var options = new ContactFindOptions();
options.filter=""; // empty search string returns all contacts
options.multiple=true; // return multiple results
filter = ["displayName"]; // return contact.displayName field
// find contacts
navigator.contacts.find(filter, onSuccess, onError, options);
}
// onSuccess: Get a snapshot of the current contacts
//
function onSuccess(contacts) {
for (var i=0; i<contacts.length; i++) {
alert(contacts[i].displayName);
var phonenumber;
phonenumber = contacts[i].phoneNumbers;
$("ul").append("<li><a href=tel:"+phonenumber+">"+contacts[i].displayName+"</a></li>");
}
};
// onError: Failed to get the contacts
//
function onError(contactError) {
alert('onError!');
}
</script>
</head>
<body>
<ul data-role="listview" data-theme="g" data-filter="true">
<li><a>hello</a></li>
</ul>
</body>
</html>
contacts[i].phoneNumbers
是一个数组,所以你应该把它添加到变量中:
var phonenumber = contacts[i].phoneNumbers[0];
或者遍历最适合您的数组。
尝试使用
$("ul").append("<li><a href=callto:"+phonenumber+">"+contacts[i].displayName+"</a></li>");
这对我有用:
phonenumber = contacts[i].phoneNumbers[0].value.replace(" ", "");
$("#ul").append("<li><a href=tel:+91"+phonenumber.replace(" ", "")+">"+contacts[i].displayName+"<br/>"+phonenumber.replace(" ", "")+"</a></li><br/>");
我使用了 replace() 函数,因为我在电话号码的数字之间获得了空格。
希望对您有所帮助。
相关文章:
- Javascript:selenium Web驱动程序isDisplayed()不工作
- jQuery UI自动完成突然停止工作
- AngularJS UI路由器不能像ng路由器那样工作
- HTML5音频加载和播放获胜'我不能在iPad上工作
- JavaScript打印功能使日历停止工作
- Javascript.getHours()工作不正常
- 为什么这在IE中的工作方式与在Firefox中不同
- 视频HTML没有'无法在Internet Explorer 11上工作
- 扩展移相器按钮类不工作
- Firebase迁移-简单的Firebase.set没有'不再工作了——旧的还是新的
- 谷歌地图不是以HTML显示,而是在JS Fiddle上工作
- 正在尝试使用if和else添加类,但无法正常工作
- Jquery FadeIn FadeOut 只工作一次
- Foreach无法在Typescript中工作
- 另一个ajax调用中的Jquery ajax调用在for循环中没有按预期工作
- 为什么不是't窗口.恢复正常工作吗?(javascript/jquery)
- JS可以在Chrome中工作,但不能在Firefox中工作
- 最大高度转换不;不工作,工作缓慢
- Gulp-rev:不是第一次工作,而是在第一次工作之后工作
- JQuery - Ajax: encodeUriComponent不工作(EncodeUri工作)