ajax异步返回拼接html,样式失效问题

html-css012

ajax异步返回拼接html,样式失效问题,第1张

ajax异步请求数据,在前端用js拼接也好,在后端拼接整体当作字符串返回给前端也好,前端拿到数据传到html中时会发现,拼接的html的css已经失效。

然后发现样式失效之后,页面展示就这样了

后来才发现,在ajax回调中,需要再次调用一下jquery操作dom的方法,如图下图所示

经过重新渲染之后,页面很快就趋于平整啦。

完!

比如服务器上有张表或者list\x0d\x0aidnamesex\x0d\x0a1张三男\x0d\x0a2李四女\x0d\x0a3王五男\x0d\x0a你首先在后台代码中把这个表处理成为JSON格式然后用Response.write的方法输出来,比如这样\x0d\x0a[{id:1,name:'张三',sex:'男'},{id:2,name:'李四',sex:'女'},{id:3,name:'王五',sex:'男'}]\x0d\x0aJSON是用于在JS中描述实体对象的一种方式,具体关于JSON的知识可以看w3school.com.cn上的相关内容,我这儿就不给你细讲了,很简单,我只说做法:\x0d\x0a为了方便使用,你需要在你的页面中引用jQuery库,我不知道你用什么语言做的后台程序,原理一样\x0d\x0a$.ajax({\x0d\x0aurl:"这里换成你写好的用于把表转换成JSON的后台处理文件地址,比如a.aspx?参数",\x0d\x0atype:"POST",//这里是AJAX请求的方式\x0d\x0adataType:"JSON",//如果你回发的内容是JSON格式的就用这个,否则用Text或其他\x0d\x0adata:{\x0d\x0a参数1:值,\x0d\x0a参数2:值,\x0d\x0a......\x0d\x0a参数n:值\x0d\x0a},//要发送的参数,如果无参数可以不写此项\x0d\x0asuccess:function(data)\x0d\x0a{\x0d\x0a//此处写入发送成功后要处理的代码,而参数里的这个data,就是请求成功后返回来的上面那个格式的JSON,你可以用data[i]的值来取其中一行,如取张三的数据就是\x0d\x0adata[0].name,就取出了张三的name属性\x0d\x0a所以你可以在这里用循环去处理data,然后将结果用document.write的方式输出来就完成了。\x0d\x0a},\x0d\x0aerror:function(XMLHttpRequest,Error,F)\x0d\x0a{\x0d\x0a//出错后可以在这里给出提示,Error参数表示错误信息\x0d\x0a}\x0d\x0a})\x0d\x0a还有弄不清楚的地方可以继续和我探讨。