欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

ajax返回不能执行JS,搜了百度好多都没能解决,只能向高手请教,谢谢了!

程序员文章站 2022-04-29 12:29:34
...
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('');				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="加载中......";       }    }}


打开静态页后自动载入ajax返回的一个内容模板,内容模板是一个瀑布流效果,里面的JS没法执行,把JS放到静态页里也不行,怎么让ajax返回后再执行js?先谢谢了!

  


回复讨论(解决方案)

执行顺序现在应该是先执行完静态页面的js 才ajax请求 所以没有效果 可以在js里加个延时什么的 我乱猜的 错了不要怪我

通过 .innerHTML 传入的 html 没有经过文档分析器,所以其中的 script 标记被视为普通 html 标记,没有显示也不会执行

通过 ajax 获取的 js 代码,要么用 eval 执行,要么以 script 节点添加到文档流中

用JQ吧,$.load()

通过 .innerHTML 传入的 html 没有经过文档分析器,所以其中的 script 标记被视为普通 html 标记,没有显示也不会执行

通过 ajax 获取的 js 代码,要么用 eval 执行,要么以 script 节点添加到文档流中




是的,就是不懂具体怎么写,能举个例子吗?谢谢!