今天在开发JQuery Mobile程序时候,须要从服务器取得数据,随后显示在页面上的Listview控件中,数据完整获取到了,也动态添加到Listview控件中,可是数据对应的CSS没有任何效果了,并且操做数据的JS代码也很差使了!!!html
一,使动态加载数据对应的CSS生效。服务器
//刷新Listview,使CSS生效 $("#控件ID").listview("refresh");
在加载完数据代码以后,加入上面代码,把“控件ID”换成你的真正的Listview控件ID就能够了!其它控件暂时没有尝试,可是Listview确定能够的!!函数
下面是个人动态添加数据和使对应CSS生效完整代码:测试
1 var dataArr = responseObject.obj; 2 3 if (dataArr.length > 0) { 4 5 var tempHtml = ""; 6 7 for (var i = 0; i < dataArr.length; i++) { 8 tempHtml += '<li>'; 9 tempHtml += '<a href="#" class="notice-data" id="' + i + '" onclick="GoDetailPage(this.id)">'; 10 tempHtml += '<img src="../../img/u167.png" style="margin-left:5px;margin-top: 18px">'; 11 tempHtml += '<h2 style="margin-left: -35px">' + dataArr[i].title + '</h2>'; 12 tempHtml += '<p style="margin-left: -35px">' + dataArr[i].depart + '</p>'; 13 tempHtml += '<p style="margin-left: 75%;margin-top:-35px">' + dataArr[i].date + '</p>'; 14 tempHtml += '</a>'; 15 tempHtml += '</li>'; 16 } 17 18 //更新Listview中的html内容 19 $("#notice-data-list").html(tempHtml); 20 21 //刷新Listview,使CSS生效 22 $("#notice-data-list").listview("refresh"); 23 24 }
二,如何使动态添加数据对应的JS生效this
个人需求可能比较简单,就是点击事件,在这个事件里面处理一些事物。看上面的第9行代码,里面有一个JS事件“onclick”,这样使用最原始的JS代码就能够了!下面是对应的函数代码:spa
//访问详细信息页面 function GoDetailPage(id) { alert(id); $.mobile.changePage("noticeDetail.html"); }
上述代码均测试过,能够正常工做!可能个人解决办法不够好,若是您有更好办法,但愿您能告诉我,谢谢!sunylat@163.com.net
参考:code
https://blog.csdn.net/u012702547/article/details/45130615htm