-
请问:怎么样在ajax中异步调用页面并执行调用页里的JS5
众说周知 A页面使用AJAX的xmlHttp 异步调用另外一个页面B,
是把B页的前端代码(包括HTML,CSS,JS等)是以字符串的形式存储在data里
所以在A页面中显示的结果是HTML 但是JS等不体现也不执行
请问 怎么样才能使 A页面调用B页面的似乎 也执行其中的JS代码呢?2008年8月12日 11:04
2个答案 按时间排序 按投票排序
-
采纳的答案
依照ext的做法,先提取返回值中的js代码(包括<script src>和<script></script>2种),针对<script src="**"></script>的情况,用
var s = document.createElement('<script>'); s.setAttribute('type',"text/script"); s.setAttribute('src',"***"); var hd = document.getElementsByTagName('head')[0]; hd.appendChild(s);
来执行.
针对<script>script</script>的情况,用window.execScript(script);//script为<script></script>中包含的js代码. 或者用eval(script);来执行
来执行.
另附Ext源码:update : function(html, loadScripts, callback){ if(typeof html == "undefined"){ html = ""; } if(loadScripts !== true){ this.dom.innerHTML = html; if(typeof callback == "function"){ callback(); } return this; } var id = Ext.id(); var dom = this.dom; html += '<span id="' + id + '"></span>'; E.onAvailable(id, function(){ var hd = document.getElementsByTagName("head")[0]; var re = /(?:<script([^>]*)?>)((\n|\r|.)*?)(?:<\/script>)/ig; var srcRe = /\ssrc=([\'\"])(.*?)\1/i; var typeRe = /\stype=([\'\"])(.*?)\1/i; var match; while(match = re.exec(html)){ var attrs = match[1]; var srcMatch = attrs ? attrs.match(srcRe) : false; if(srcMatch && srcMatch[2]){ var s = document.createElement("script"); s.src = srcMatch[2]; var typeMatch = attrs.match(typeRe); if(typeMatch && typeMatch[2]){ s.type = typeMatch[2]; } hd.appendChild(s); }else if(match[2] && match[2].length > 0){ if(window.execScript) { window.execScript(match[2]); } else { window.eval(match[2]); } } } var el = document.getElementById(id); if(el){Ext.removeNode(el);} if(typeof callback == "function"){ callback(); } }); dom.innerHTML = html.replace(/(?:<script.*?>)((\n|\r|.)*?)(?:<\/script>)/ig, ""); return this; },
2008年8月12日 12:25
-
A调用B的时候,是无法调用到B中的方法的,这点是不用怀疑的.
只能让B页面自动执行一些需要在调用的时候执行的函数,并且用一个标识判断该不该执行这些方法:
B.htmwindow.onload=function(){ var strParam=location.search.substring(1);//获取传递过来的url参数.即?后面的字符串. if(strParam=="true"){ //执行需要其它页面进行调用执行的JS代码. ... ... } }
在A.htm中发送数据的时候,以这种形式:xmlHttp.open("POST","B.htm?true",false);//传一个true到B.htm页面,告诉B页面执行部分代码. xmlHttp.send();
2008年8月12日 12:30
相关推荐
"深入探究五电平NPC逆变器的载波移相控制策略及Matlab Simulink 2016b版本的仿真实现",五电平NPC逆变器的载波移相控制 matlab simulink 2016b版本 ,核心关键词:五电平NPC逆变器; 载波移相控制; MATLAB Simulink; 2016b版本。,"2016b版Matlab Simulink仿真五电平NPC逆变器载波移相控制"
springboot中医养生系统
2021年03月C语言四级
2022年03月Python五级实操
"adas Acc自适应巡航系统算法设计文档:某自动驾驶公司算法设计与优化详解",adas Acc 自适应巡航系统算法设计说明书 某自动驾驶公司Acc算法设计文档说明 ,Adas;Acc;自适应巡航系统;算法设计;自动驾驶公司。,自适应巡航系统算法设计手册:Acc算法设计与优化指南
da_1737107771650
EsFFT-main.zip 图像清晰度检测算法EsFFT Python源码
电梯图纸大全:主板、变频器及GVF3控制板原理图等,各类电梯图纸,主板,变频器图纸 E:\各类电梯图纸,主板,变频器图纸\图纸 ├─0VFR2B-403.404 HVIB..pdf 6.46MB ├─1_2_1_PV33-3L.pdf 601.59KB ├─1_PV33-3L.pdf 601.59KB ├─1_RV33-4NV(1).pdf 1.64MB ├─778 P1.pdf 28.67MB ├─ABA26800AKT--GDCB线路板图纸.pdf 4.18MB ├─ACD4 UD- 403图纸 KDA26800ACC.pdf 1.5MB ├─GECB 程序版 ABA26800AML.pdf 3.5MB ├─GECB-AP.pdf 6.5MB ├─GECB-EN主板GBA26800LC.pdf 2.24MB ├─gvf3.hgp主控制板原理图.pdf
2021年1月食品安全管理体系
重点复习题一
"基于双重介质模型的COMSOL瓦斯抽采流固耦合分析:达西定律在瓦斯渗流中的应用及MPH文件支持",comsol瓦斯抽采-双重介质模型 流固耦合模型 用达西定律实现瓦斯渗流 提供mph文件 ,comsol;瓦斯抽采;双重介质模型;流固耦合模型;达西定律;瓦斯渗流;mph文件,"Comsol瓦斯双重介质流固耦合模拟"
基于ANPC-VSG非线性负载下虚拟同步发电机控制策略及中点电位平衡技术研究,ANPC(有源中点钳位NPC)-VSG(非线性负载),基于A型有源三电平逆变器的非线性负载下同步发电机控制,中点电位平衡控制,电压电流双闭环控制,基波提取算法。 1.VSG,非线性负载 2.电压电流双闭环,基波提取算法 3.提供相关参考文献 支持simulink2022以下版本,联系跟我说什么版本,我给转成你需要的版本(默认发2016b)。 ,ANPC; VSG; 非线性负载; 电压电流双闭环控制; 基波提取算法; 中点电位平衡控制; 参考来源; Simulink 2022以下版本,基于ANPC-VSG的虚拟同步发电机控制策略研究:中点电位平衡与电压电流双闭环控制算法优化
2020年09月Scratch三级理论B
2021年09月机器人五级理论
"Comsol仿真:构建变压器匝间短路5%的电磁振动噪声模型,深入探究电磁场分布、磁密分布、振动形变及噪声分布等多维度结果",comsol仿真,变压器匝间短路5%的电磁振动噪声模型 包括电磁场分布,磁密分布,振动形变,噪声分布等结果 ,关键词:comsol仿真; 变压器匝间短路; 电磁振动噪声模型; 电磁场分布; 磁密分布; 振动形变; 噪声分布。,COMSOL仿真:变压器匝间短路5%电磁振动噪声模型及多场分布研究
基于Intel Core i7第六代处理器的PXIe控制器——高性能、灵活接口、广泛适用,PXI PXIe控制器 4Link架构 16GB带宽 兼容主流PXIe机箱 设计文件 原理图&PCB FPGA源码 可直接制板 1 概述 控制器采用Intel? Core?i7 第六代高性能处理器,内存最大可支持32G DDR4。该系统PXI Express的link配置为通用的4Port 4lan的模式,最大的数据吞吐量为8GB S。 控制器还提供丰富灵活的 I O接口,包括1个VGA接口,两个DisplayPort接口,4个USB3.0接口,可以连接高速的外部设备,2个千兆以太网口,2个USB2.0接口可以连接其他外部设备或者USB接口的仪器。产品设计经过严格测试已成熟应用,能长时间稳定可靠地工作,可广泛应用于工业自动化控制,军用计算机领域。 2 性能特性 ?超强的处理性能,支持Intel? Core? i7-6822EQ 2.0GHz处理器 ?支持双通道 DDR4 SODIMM 1600MHz内存,最大可达32 GB(默认8GB) ?最大系统带宽支持 16 GB s ?PXI
基于FPGA的ATSHA204(mod208)国产加密芯片控制代码:工程实现与代码详解手册,基于FPGA实现的ATSHA204(国产型号mod208)加密芯片的控制工程 代码包括唤醒 读写锁定配置 数据 OTP区及密钥验证等操作。 包含源代码 仿真工程及代码讲解和芯片手册的讲解 ,基于FPGA的ATSHA204加密芯片控制工程; 唤醒; 读写; 锁定配置; OTP区; 密钥验证; 源代码; 仿真工程; 代码讲解; 芯片手册讲解。,基于FPGA的ATSHA204(Mod208)加密芯片控制:工程代码及验证指南
HUAWEI-LiteOS-Studio-Setup-x64-1.45.9
2022年06月机器人六级理论
线性自抗扰LADRC与PI控制:永磁同步电机控制中的性能对比与优势分析,线性自抗扰LADRC和PI控制对比永磁同步电机控制 相比与PI外环,线性自抗扰外环无超调 ,LADRC控制; PI控制; 永磁同步电机控制; 线性自抗扰外环无超调,"线性自抗扰LADRC与PI控制对比于永磁同步电机:无超调优势明显"