扫码关注官方订阅号
是获取后端json数据
小伙看你根骨奇佳,潜力无限,来学PHP伐。
从后端获取数据和getElementsByTagName有啥关系,还有。。要贴代码
getElementsByTagName
bytag吧
代码贴出来看看
得等到加入DOM后才能操作吧,还有你是不是提前获取了DOM元素?比如列表是一个ID为1的p,在ajax获取完后加进DOM后要重新获取1,你在Ajax前的1只包含Ajax前的DOM结构。
我的意思是 从服务器端获取数据然后创建节点;但是不能得到这些节点,在所有文本都加载完成后还是不能,列表已经在页面显示了
代码如下ajax({
method : 'get', url : 'http://study.163.com/webDev/couresByCategory.htm', data : { 'pageNo':'1', 'psize':'20', 'type':'10' }, success : function (data) { console.log(data); var _data= JSON.parse(data); var op = document.getElementById("courseList"); for(i=0;i<_data.list.length;i++){ var oLi = document.createElement("li"); op.appendChild(oLi); var _img = document.createElement("img"); var _name = document.createElement("p"); var _provider = document.createElement("p"); var _count = document.createElement("p"); var _price = document.createElement("p"); _img.setAttribute("src", _data.list[i].middlePhotoUrl); _name.innerHTML=_data.list[i].name; _provider.innerHTML=_data.list[i].provider; _count.innerHTML=_data.list[i].learnerCount; _price.innerHTML="¥"+_data.list[i].price; oLi.appendChild(_img); oLi.appendChild(_name); oLi.appendChild(_provider); oLi.appendChild(_count); oLi.appendChild(_price); _name.setAttribute('class','courseName'); _provider.setAttribute('class','courseProvider'); _count.setAttribute('class','peopleCount'); _price.setAttribute('class','coursePrice'); } }, async : true
});
既然是异步的……那么你只能在success的回调里面选择元素吧。在你贴出来的代码里我好像没看到……?提供一个思路:在你的document.getElementByTagName之前打个alert阻止脚本运行,看看你的列表有没有显示出来……如果显示出来了,那就妥妥的是灵异事件了。
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
扫描下载App
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
从后端获取数据和
getElementsByTagName
有啥关系,还有。。要贴代码bytag吧
代码贴出来看看
得等到加入DOM后才能操作吧,还有你是不是提前获取了DOM元素?比如列表是一个ID为1的p,在ajax获取完后加进DOM后要重新获取1,你在Ajax前的1只包含Ajax前的DOM结构。
我的意思是 从服务器端获取数据然后创建节点;但是不能得到这些节点,在所有文本都加载完成后还是不能,列表已经在页面显示了
代码如下
ajax({
});
既然是异步的……那么你只能在success的回调里面选择元素吧。在你贴出来的代码里我好像没看到……?
提供一个思路:在你的document.getElementByTagName之前打个alert阻止脚本运行,看看你的列表有没有显示出来……如果显示出来了,那就妥妥的是灵异事件了。