关于javascript在子页面中函数无法调试问题的解决

近期在做一个项目,会遇到在子页面中提交的时候会无法能够调试javascript代码的情况出现,有时候这种问题,我们无法正常在浏览器,看到我们子页面的javascript代码,所以只能够用原始的alert 或者 console.log(),当然,这也是一种解决方法,但是有时候,我们就想看一下程序到底是如何运行的,同时也可以看每个参数到底是什么值,所以意义还是比较大的。

我贴张图,大家就大概了解是什么时候会出现这个问题了。


<script>
function stopWatchDog(watchDogId) {
	alert("aa");
	var url = '<s:url value="/watchDog/stopWatchDog"/>';
	var params = {
		watchDogId : watchDogId,
	};
	$.post(url, params, function(data) {
		if (data.success) {
			closeDialog();
			tbGrid.send();
		} else {
			if (data.errorMsg != null && data.errorMsg != "") {
				jAlert(data.errorMsg, "系统消息");
			} else {
				jAlert("停止异常", "系统消息");
			}
			$("#saveBtn").removeAttr("disabled");
			$("#saveBtn").css("color", "white");
		}
	}, "json");
}
</script>

这个其实是函数声明,大家如果了解javascript上下文的话,就知道其实函数声明只是在页面上下文加载的时候加载的函数名,其函数内容无法正常加载。


如果我们换成函数自执行或者是在函数自治性中定义这个函数声明的话,那么就可以解决这个问题了。


(function(){
	function stopWatchDog(watchDogId) {
		alert("aa");
		var url = '<s:url value="/watchDog/stopWatchDog"/>';
		var params = {
			watchDogId : watchDogId,
		};
		$.post(url, params, function(data) {
			if (data.success) {
				closeDialog();
				tbGrid.send();
			} else {
				if (data.errorMsg != null && data.errorMsg != "") {
					jAlert(data.errorMsg, "系统消息");
				} else {
					jAlert("停止异常", "系统消息");
				}
				$("#saveBtn").removeAttr("disabled");
				$("#saveBtn").css("color", "white");
			}
		}, "json");
	}
})();


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值