mui.init();
window.addEventListener('getDetail', function(event) {
//获得事件参数
var id = event.detail.id;
mui.ajax("http://dlzs.shjjyq.net/Service/MobileService/PersonnelInfoService.asmx/GetPersonnelInfo", {
data: {
pId: id
},
dataType: "json",
type: "post",
timeout: 60000,
contentType: "application/x-www-form-urlencoded",
success: function(data) {
var table = document.querySelector('.mui-table-view');
while (table.hasChildNodes()) {
if (table.childNodes.length == 1) {
break;
} else {
table.removeChild(table.firstChild);
}
}
var Name = document.createElement('li');
Name.className = 'mui-table-view-cell';
Name.innerHTML = '<a>姓名:<span class="mui-pull-right">' + (data.Name === null ? '' : data.Name) + '</span></a>';
table.insertBefore(Name, table.lastChild);
var CorpRole = document.createElement('li');
CorpRole.className = 'mui-table-view-cell';
CorpRole.innerHTML = '<a>企业角色:<span class="mui-pull-right">' + (data.CorpRole === null ? '' : data.CorpRole) + '</span></a>';
table.insertBefore(CorpRole, table.lastChild);
var PIDType = document.createElement('li');
PIDType.className = 'mui-table-view-cell';
PIDType.innerHTML = '<a>证件类型:<span class="mui-pull-right">' + (data.PIDType === null ? '' : data.PIDType) + '</span></a>';
table.insertBefore(PIDType, table.lastChild);
var PID = document.createElement('li');
PID.className = 'mui-table-view-cell';
PID.innerHTML = '<a>证件号码:<span class="mui-pull-right">' + (data.PID === null ? '' : data.PID) + '</span></a>';
table.insertBefore(PID, table.lastChild);
var Sex = document.createElement('li');
Sex.className = 'mui-table-view-cell';
Sex.innerHTML = '<a>性别:<span class="mui-pull-right">' + (data.Sex === null ? '' : data.Sex) + '</span></a>';
table.insertBefore(Sex, table.lastChild);
var Birthday = document.createElement('li');
Birthday.className = 'mui-table-view-cell';
Birthday.innerHTML = '<a>出生日期:<span class="mui-pull-right">' + (data.Birthday === null ? '' : data.Birthday.substr(0, 10)) + '</span></a>';
table.insertBefore(Birthday, table.lastChild);
var MobilePhone = document.createElement('li');
MobilePhone.className = 'mui-table-view-cell';
MobilePhone.innerHTML = '<div class="mui-slider-handle">' +
'手机号码:' +
'<span id="MobilePhoneValue" class="mui-pull-right">' +
(data.MobilePhone === null ? '' : data.MobilePhone) +
'</span>' +
'</div>' +
'<div class="mui-slider-right mui-disabled">' +
'<a id="MobilePhone" class="mui-btn mui-btn-yellow mui-icon mui-icon-phone"></a>' +
'</div>';
table.insertBefore(MobilePhone, table.lastChild);
var Telphone = document.createElement('li');
Telphone.className = 'mui-table-view-cell';
Telphone.innerHTML = '<div class="mui-slider-handle">' +
'固定电话:' +
'<span id="TelphoneValue" class="mui-pull-right">' +
(data.Telphone === null ? '' : data.Telphone) +
'</span>' +
'</div>' +
'<div class="mui-slider-right mui-disabled">' +
'<a id="Telphone" class="mui-btn mui-btn-yellow mui-icon mui-icon-phone"></a>' +
'</div>';
table.insertBefore(Telphone, table.lastChild);
var QQ = document.createElement('li');
QQ.className = 'mui-table-view-cell';
QQ.innerHTML = '<a>QQ:<span class="mui-pull-right">' + (data.QQ === null ? '' : data.QQ) + '</span></a>';
table.insertBefore(QQ, table.lastChild);
var Weixin = document.createElement('li');
Weixin.className = 'mui-table-view-cell';
Weixin.innerHTML = '<a>微信:<span class="mui-pull-right">' + (data.Weixin === null ? '' : data.Weixin) + '</span></a>';
table.insertBefore(Weixin, table.lastChild);
var Email = document.createElement('li');
Email.className = 'mui-table-view-cell';
Email.innerHTML = '<a>邮箱:<span class="mui-pull-right">' + (data.Email === null ? '' : data.Email) + '</span></a>';
table.insertBefore(Email, table.lastChild);
var PIDAdr = document.createElement('li');
PIDAdr.className = 'mui-table-view-cell';
PIDAdr.innerHTML = '<a>证件地址:<span class="mui-pull-right">' + (data.PIDAdr === null ? '' : data.PIDAdr) + '</span></a>';
table.insertBefore(PIDAdr, table.lastChild);
var Residence = document.createElement('li');
Residence.className = 'mui-table-view-cell';
Residence.innerHTML = '<a>现居住地:<span class="mui-pull-right">' + (data.Residence === null ? '' : data.Residence) + '</span></a>';
table.insertBefore(Residence, table.lastChild);
}
});
});
mui('.mui-scroll-wrapper').scroll({
deceleration: 0.003
});
mui.plusReady(function() {
document.getElementById("MobilePhone").addEventListener('tap', function() {
var num = document.getElementById("MobilePhoneValue").innerHTML;
plus.device.dial(num, true);
});
document.getElementById("Telphone").addEventListener('tap', function() {
var num = document.getElementById("TelphoneValue").innerHTML;
plus.device.dial(num, true);
});
});
- 发布:2016-02-02 17:13
- 更新:2016-02-02 18:01
- 阅读:1430
看到你主贴中给出了源代码,问题已经很清楚了。MobilePhone 是 ajax 之后动态添加的 DOM 对象,plusReady 的时候它还不存在,所以就报错了。
这种情况一般是用 mui(...).on() 这种代理事件监听的方式,或者在动态创建 MobilePhone 的时候给它 addEventListener()。
-
wujianfeng (作者)
可问题是我需要调用5+原生的功能,就是拨打电话,代码中你可以看到。官方不是说要调用5+原生的功能必须要在plus ready事件中嘛?这样的话 不是两者有冲突嘛?不知道我的理解对不对?
2016-02-03 09:14
wujianfeng (作者)
不好意思,请问加延时在主页面加还是子页面加?如何加?新手。。。
另外我不清楚 会有什么其他代码干扰,弹是我的页面是有一个自定义时间的
window.addEventListener('getDetail', function(event) {
2016-02-02 17:30
DCloud_heavensoft
回复 wujianfeng:我的推测是你的按钮在plus ready的时候并没有构建好dom。所以让你加个延时试试,settimeout是加延时。
2016-02-02 17:37
wujianfeng (作者)
回复 DCloud_heavensoft:我真不知道如何处理,麻烦帮忙看下我代码哪块需要改进?
2016-02-02 17:47
wujianfeng (作者)
回复 DCloud_heavensoft:代码我已经上传上去了
2016-02-02 17:47
DCloud_heavensoft
你的dom创建的太慢,plus ready事件发生时,document.getElementById("MobilePhone")并不存在于dom。你可以在这个dom元素真正被创建后再调用tap。
2016-02-02 17:54
wujianfeng (作者)
回复 DCloud_heavensoft:可问题是我需要调用5+原生的功能,就是拨打电话,代码中你可以看到。官方不是说要调用5+原生的功能必须要在plus ready事件中嘛?这样的话 不是两者有冲突嘛?不知道我的理解对不对?
2016-02-03 08:45
DCloud_heavensoft
回复 wujianfeng: 只要在plus ready之后就可以用plus,之前是不能用的,因为初始化没完成
2016-02-04 01:33
wujianfeng (作者)
回复 DCloud_heavensoft:已经可以了,谢谢
2016-02-04 08:41