原来使用hellow mui的webview的侧换菜单,感觉有点卡顿,然后就换成了div模式的侧滑菜单,
但是发现index页面中数据列表无法显示(使用ajax拼接的);
两次console都输出了我想要的值,但在手机上就是不显示?
我还通过取了一下a.querySelectorAll("li").length显示得到了两个,
但是就是不显示
<ul class="mui-table-view mian-list" id="index_main_list">
</ul>
index_list();
var a=document.getElementById('index_main_list');
console.log(a.querySelectorAll("li").length);
var index_list = function() {
var data = {
"dbteacher": "3"
};
handleData("index_main_list", "http://192.168.0.11/", data);
}
function handleData(warp, url, par) {
var result=null;
par.mobile = mobile;
if(city!=null){
par.bank_city=city;
}
console.log("url="+url);
for(var i in par){
var property=par[i];
console.log(i+" = "+property);
}
mui.ajax(url, {
data: par,
dataType: 'json',
type: 'get',
async:false,
timeout: 10000,
success: function(data) {
console.log("data=="+JSON.stringify(data));
if (data.status == 0) {
console.log(data.status);
result="none";
}
else{
handleJson(data.data, warp, par.p);
}
},
error: function(xhr, type, errorThrown) {
console.log(type);
}
});
return result;
}
function handleJson(data, warp, p) {
var dataHtml = "";
for (var i = 0; i < data.length; i++) {
var id = data[i].user_uid;
var name = data[i].name;
var photo = data[i].photo;
var subtitle = data[i].subtitle;
var money = data[i].money;
// var eval=Math.round(data.eval_mean);
if (p == null || p == ""|| p==1) {
dataHtml+= "<li class='mui-table-view-cell mui-media'><a href='javascript:;' id='" + id + "' class='mui_item'><div class='item_title'>" +
"<img class='mui-media-object mui-pull-left' src='" + photo_url + photo + "' /><div class='item_title_info'>" +
"<p class='user_name'>" + name + "</p><p class='user_course'>" + subtitle + "</p></div></div><div class='mui-media-body clearfix'>" +
"<div class='user_price fl'><div><p><span class='price_num'>" + parseInt(money) + "</span>元/时起</p><p><s>机构价:350元</s></p></div></div><div class='user_other fl'>" +
"<div><p class='user_other_bottom'><span>256</span>条评论<span>5</span>分</p></div></div></div></a></li>";
}
}
if (p == null || p == ""|| p==1) {
console.log(dataHtml);
document.getElementById(warp).innerHTML = dataHtml;
}
}
爱慕啼 (作者)
但我设置了async:false;
我在 if (p == null || p == ""|| p==1) {
console.log(dataHtml);
document.getElementById(warp).innerHTML = dataHtml;
}
中加了log,输出了我要拼接的代码。我在截图中用箭头标的就是。
我还不放心,在handleJson方法执行后,
又var a=document.getElementById('index_main_list');
console.log(a.querySelectorAll("li").length);
显示ul下,有两个li,但就是看不见,
因为方法handleData,handleJSON是写在一个专门的js中,是几个页面通用的,一开始用webview的侧滑菜单时也没有问题,所以我想应该不是方法的错误。
2015-10-05 15:01
DCloud_UNI_CHB
回复 爱慕啼:把完整示例发上来吧
2015-10-05 15:30
爱慕啼 (作者)
回复 DCloud_UNI_CHB:您好,我已私信给您发过去了。
2015-10-05 16:48