2023-05-12 开启多语言插件支持……

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

javascript 苏 demo 2740℃ 0评论

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

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

1

 

01.[javascript] view plaincopy在CODE上查看代码片派生到我的代码片
02. 
03.<script> 
04.function stopWatchDog(watchDogId) { 
05.alert("aa"); 
06.var url = '<s:url value="/watchDog/stopWatchDog"/>'
07.var params = { 
08.watchDogId : watchDogId, 
09.}; 
10.$.post(url, params, function(data) { 
11.if (data.success) { 
12.closeDialog(); 
13.tbGrid.send(); 
14.} else
15.if (data.errorMsg != null && data.errorMsg != "") { 
16.jAlert(data.errorMsg, "系统消息"); 
17.} else
18.jAlert("停止异常", "系统消息"); 
19.
20.$("#saveBtn").removeAttr("disabled"); 
21.$("#saveBtn").css("color", "white"); 
22.
23.}, "json"); 
24.
25.</script> 

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

 

 

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

 

 

01.avascript] view plaincopy在CODE上查看代码片派生到我的代码片
02. 
03.(function(){ 
04.function stopWatchDog(watchDogId) { 
05.alert("aa"); 
06.var url = '<s:url value="/watchDog/stopWatchDog"/>'
07.var params = { 
08.watchDogId : watchDogId, 
09.}; 
10.$.post(url, params, function(data) { 
11.if (data.success) { 
12.closeDialog(); 
13.tbGrid.send(); 
14.} else
15.if (data.errorMsg != null && data.errorMsg != "") { 
16.jAlert(data.errorMsg, "系统消息"); 
17.} else
18.jAlert("停止异常", "系统消息"); 
19.
20.$("#saveBtn").removeAttr("disabled"); 
21.$("#saveBtn").css("color", "white"); 
22.
23.}, "json"); 
24.
25.})(); 

 

打赏

转载请注明:苏demo的别样人生 » 关于javascript在子页面中函数无法调试问题的解决

   如果本篇文章对您有帮助,欢迎向博主进行赞助,赞助时请写上您的用户名。
支付宝直接捐助帐号oracle_lee@qq.com 感谢支持!
喜欢 (0)or分享 (0)