Home > Article > Backend Development > ajax返回不能执行JS,搜了百度好多都没能解决,只能向高手请教,谢谢了!
function Comment() { if(http_request.readyState == 4){ if(http_request.status == 200){ var messagereturn = http_request.responseText; if(messagereturn==null){ document.getElementById('info_lb').innerHTML="暂无信息" }else{ var r; r=messagereturn.split('<!--num-->'); if(r.length!=1){ if(r[0]!=''){ document.getElementById('info_num').innerHTML=r[0]; } document.getElementById('info_lb').innerHTML=r[1]; }else{ document.getElementById('info_lb').innerHTML=messagereturn; } } }else{ document.getElementById('info_lb').innerHTML="加载中......"; } }}
<script type="text/javascript" src="jquery.masonry.min.js"></script><script type="text/javascript">$(function(){ var $waterfall = $('#waterfall'); $waterfall.masonry({ columnWidth: 230 }); });</script>
执行顺序现在应该是先执行完静态页面的js 才ajax请求 所以没有效果 可以在js里加个延时什么的 我乱猜的 错了不要怪我
通过 .innerHTML 传入的 html 没有经过文档分析器,所以其中的 script 标记被视为普通 html 标记,没有显示也不会执行
通过 ajax 获取的 js 代码,要么用 eval 执行,要么以 script 节点添加到文档流中
用JQ吧,$.load()
通过 .innerHTML 传入的 html 没有经过文档分析器,所以其中的 script 标记被视为普通 html 标记,没有显示也不会执行
通过 ajax 获取的 js 代码,要么用 eval 执行,要么以 script 节点添加到文档流中