处理ajax返回页面代码中的script
- // 类似innerHTML,但处理了text中的<script>脚本,并设置id的innerHTML值为去掉script后的html文本
- // text为ajax调用返回的数据,id为要设置innerHTML的元素id
- var setInnerHTML = function(text,id) {
- var temp_div=document.createElement("div");
- temp_div.innerHTML=text;
- var temp_scripts=temp_div.getElementsByTagName("script");
- for(var i=0;temp_scripts[i];i=i+1){
- var script_obj=document.createElement("script");
- script_obj.text = temp_scripts[i].innerText;
- document.getElementById(id).appendChild(script_obj);
- }
- var reg=/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi;
- var html_text=text.replace(reg,"");
- document.getElementById(id).innerHTML=html_text;
- };
转载于:https://blog.51cto.com/booklet/460398