javascript中把函数作为参数
function ajaxGetData(src, msg,type, functionSuccess, functionFailed) {$.ajax({
type:"post",
url:src,
data:msg,
//datatype:( (type==null||type=="")? "json":type),
datatype:type,
success:function(flag){//请求成功
functionSuccess(flag);
},
error:function(flag){//请求失败
functionFailed(flag);
}
});
}
这是我的一个行数,现在我在另外一个地方调用这个函数,怎么才能获取到这个返回参数flag呢?这是我调用的方法,
ajaxGetData(this.AjaxSrc, { "filter": this.FilterJson, "pagesize": this.PageSize, "currentPage": this.CurrentPage },this.DataType,
function (msg) {
this.fomateHtml(this.ControlId,flag);
alert(msg);
},
function (msg) {
alert("failed");
});
这里我在调试的时候发现,这个msg是未定义,而不是我想象中获取到ajax返回的数值 --------------------编程问答-------------------- ajaxGetData(this.AjaxSrc, { "filter": this.FilterJson, "pagesize": this.PageSize, "currentPage": this.CurrentPage },this.DataType,
function (msg) {
this.fomateHtml(this.ControlId,msg);
alert(msg);
},
function (msg) {
alert("failed");
}); --------------------编程问答--------------------
我最初就是这么写的,可是不对,后来我想flag是一个变量,我就想着用flag行不行,但是也是不行 --------------------编程问答-------------------- var innerHtml = "<div style='font-size:16px; color:blue; font-weight:bold'><img alt='水位站' title='水位监测站--" + staNM + " (点击可查看日水位详细)' "
+ "src='' style='cursor:pointer' onclick='openWaterDayChart(" + "\"realWaterStaDay.aspx?STCD=" + stcd + "&STNM=" + staNM
+ "\",\"测站今日水情过程\", getStaScreenXy(" + record.center.x + "," + record.center.y + "))'" + ";/>" + "</div>";
如上例,getStaScreenXy就是页面中一个js函数。在此作为openWaterDayChart函数的一个参数。 --------------------编程问答--------------------
肯定不是用flag的,
用msg看不出来有什么问题的,
你可以在运行的时候debug一下js(IE的开发工具或者是FireFox的FireBug都蛮好用的)看看是什么情况的, --------------------编程问答-------------------- 楼上是对的,是用msg的的,我之前出错,是因为我采用ajax出现了不稳定性的问题,所以才会出现msg为null的现象。我在多次尝试的时候,发现,有些时候msg是能够解析出来的,有些时候msg是null,奇怪。我采用json格式,为什么会出现这样子的问题
补充:.NET技术 , ASP.NET