1、感觉错误像是使用$.post()是没有到达服务器,根本不相信是我的代码错误。
2、后来我在断开的有最后一条提示的语句后面,每一处可能出错的地方都添加了提示。结果竟然发现,执行这一句
if( typeof(fun) == "function")
的时候返回false,我大吃一惊,这居然可以出错。
3、后来,我才发现是我的函数调用时是三个参数,定义时是两个参数。之所以这样,是因为函数定义时,临时把某个参数固定了,没想到它会改变,就只写了两个参数。 而调用函数时,我觉得理应有三个参数。因此闹出了矛盾。
代码如下:
定义时:
function newSnapshot(names,fun){
$.post('./api/wizard/new_snapshot',{
name:names,snapshot_name:'lanyun'
},function(d){
alert("newSnapshot "+d.msg);
if(typeof(fun) == 'function') fun();
},'json');
}
调用时:
newSnapshot( window.url_5_start_which_vmware , 'lanyun',function(){ ……});