时间:2021-07-01 10:21:17 帮助过:19人阅读
<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");
}
})();