当调用ASP.Net PageMethod时,我们将其调用如下:

function doSomething(htmlElement)
{
     PageMethods.GetText(onSuccess, onFailure);
}


在上面的示例中,保留对htmlElement的引用的最佳方法是什么,以便我们可以在onsuccess方法中继续使用它?

感谢您的任何帮助

最佳答案

由于Javascript支持closures,因此您无需担心维护对元素的引用。因为它在onSuccess内是词法范围的(假设您在onSuccess的位置内联了一个未命名的函数。)

简而言之,为onSuccess放入的函数已经可以使用对元素的引用,就好像该元素作为参数传递一样。

function doSomething(htmlElement)
{
    PageMethods.GetText(function(x, y){ var v = htmlElement /*won't be null*/   } , onFailure);

}

10-06 15:55