传递jQuery对象和WebMethod将值返回给OnSuccess函数

时间:2010-03-31 16:47:27

标签: javascript jquery asp.net ajax webmethod

我从此代码中调用WebMethod

if($(this).attr("checked")) {  
..  
MyWebMethod(variable1, variable2, onSuccessFunction);  
}

MyWebMethod返回一个整数,我想将上面jQuery对象的$(this).attr("id")设置为返回的整数。基本上,我正在尝试相当于MVC Ajax.ActionLink...AjaxOptions {UpdateTargetID =...}但是,我无法弄清楚如何同时获得$(this)的引用以及返回的值。例如,如果我这样做:

MyWebMethod(variable1, variable2, onSuccessFunction($(this)));

我可以成功地操作jQuery对象,但显然它没有来自MyWebMethod的返回值。或者,方法签名为onSuccessFunction(returnValue)的第一个代码块具有来自MyWebMethod的正确返回值,但没有我正在寻找的jQuery对象的概念。我是不是错了?

1 个答案:

答案 0 :(得分:0)

我不确切知道你的第一个例子中onSuccessFunction的参数是什么,但是这样的东西将是你正在寻找的东西。

if($(this).attr("checked")) {   
  var el = $(this); 
  MyWebMethod(variable1, variable2, function(x, y z) { onSuccessFunction(x, y, z, el); });   
} 

**更新**已修复以避免出现“此”范围问题。