关于asp.net母板页中javascript执行顺序的问题
问题描述:
母板页+内容页
内容中引用jsp文件,里面有俩函数 init(),random()
在内容页中调用函数的时候发现init()必须放在html之后,所以就把
<script>
if(.....){init()}
</script>
放在了母板页</html>之后(if里面的条件是检测哪个内容页调用的,不是当前内容页的话就不加载)
然后页面执行完毕
到这里都没有问题,再次在内容页调用init()或者random()都会提示错误,大致意思就是缺少jsp对象
我都不知道问题到底处在里哪里?
母板页的部分代码
.......
</body>
<script type="text/javascript">
if (document.getElementById("container")) { init0() }
</script>
</html>
子页面中部分代码:
<asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server">
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<script type="text/javascript" src="http://api.map.baidu.com/api?v=1.5&ak=29a35e4e6ba9f5f-------d309ac562"></script>
<script type="text/javascript" src="Scripts/ditu.js"></script>
<title>添加复杂内容的信息窗口</title>
</asp:Content>
ditu.js
function init0() {
var map = new BMap.Map("container"); // 创建Map实例
var point = new BMap.Point(120.322945, 37.681078); // 创建点坐标
addMarker(point);
map.centerAndZoom(point, 16); // 初始化地图,设置中心点坐标和地图级别。
var marker = new BMap.Marker(point);
marker.addEventListener("click", function () { map.openInfoWindow(infoWindow, point); });
map.enableScrollWheelZoom(); //启用滚轮放大缩小,默认禁用
map.enableContinuousZoom(); //启用地图惯性拖拽,默认禁用
map.addControl(new BMap.NavigationControl()); //添加默认缩放平移控件
map.addControl(new BMap.MapTypeControl({ mapTypes: [BMAP_NORMAL_MAP, BMAP_HYBRID_MAP] })); //2D图,卫星图
// 编写自定义函数,创建标注
function addMarker(point) {
var marker = new BMap.Marker(point);
map.addOverlay(marker);
}
var opts = {
width: 250, // 信息窗口宽度
height: 100, // 信息窗口高度
title: "热力工程公司" // 信息窗口标题
}
var infoWindow = new BMap.InfoWindow("电话:885309" + '</br>' + "传真:885309" + '</br>' + "地址:山东省", opts); // 创建信息窗口对象
map.openInfoWindow(infoWindow, point); //开启信息窗口
}
[解决办法]
母就一句代码 为什么不移到子中去~
为什么要分开~