JavaScript解耦记
2024-10-19 00:23:26
有两个页面A、B。页面A调用页面B。B页面还通过异步加载方式包含一个javascipt(例如叫:ClassHeaderEvaluation.js)文件。问题场景:A页面通过异步请求方式请求B,并在B的ClassHeaderEvaluation.js文件加载完成后,调用ClassHeaderEvaluation.js中的方法,怎样实现?
思路1:
使用循环等待的方式实现,不再累述。
思路2:
在B页面中,添加一个隐藏控件,例如id为:ClassHeaderEvaluationloaddiv,修改页面B中的代码如下:
<script type="text/javascript">
$.getScript('Scripts/Student/ClassHeaderEvaluation.js', function () {
var targetObj = $("#ClassHeaderEvaluationloaddiv");
if (targetObj.length > 0)
{
var val = targetObj.val();
if (val.length > 0) {
eval(val);
}
}
});
</script>
至此,页面A在加载页面B时,就可以在回调函数中对B页面中的控件ClassHeaderEvaluationloaddiv进行赋值,此后调用操作交由B页面自己进行加载并执行。
最新文章
- 好好写,好好干-PHP基础(二)
- 动态导入(import)和静态导入(import)的区别
- (转)linux grep 正则表达式
- CF Gym100548 K Last Defence 解题报告
- C++线程类的封装
- ejabberd组成模块
- BFS详解
- php如何获取本地手机号
- Nginx反向代理使用【转载】
- 平衡树初阶——AVL平衡二叉查找树+三大平衡树(Treap + Splay + SBT)模板【超详解】
- fatal error C1083: Cannot open precompiled header file: &#39;Debug/xxoo.pch&#39;: No such file or directory
- UNIX环境高级编程——线程和信号
- Bootstrap4 导航栏
- laravle 整合 thrift
- 内联元素于与块元素的转换 相对定位、绝对定位以及fixed定位 Z轴覆盖
- IE8图片上传预览
- if、for、while的详解及实例(一)
- Elasticsearch学习笔记——安装、数据导入和查询
- 为什么js 的constructor中是无限循环嵌套:Foo.__proto__.constructor.prototype.constructor.prototype.constructor.prototype.xxx ?
- mysql reset password重置密码
热门文章
- shell脚本实例-游戏脚本
- shell之条件表达式
- Linux-remote change password (more)
- Oracle “CONNECT BY” 使用 [转]
- CentOS 6.0最小化编译安装Nginx+MySQL+PHP+Zend
- 【控件扩展】带圆角、边框、渐变的panel
- PEM文件格式详细解析
- LintCode ";Submatrix Sum";
- 剑指offer系列40----机器人的运动范围
- 【PDF】java使用Itext生成pdf文档--详解