2010-12-10 19 views
3

J'essayais de porter sur un comportement ajax ASP.Net dans un plugin jQuery. Un casse-tête qui reste à résoudre est de trouver un substitut à Function.createDelegate dans jQuery.Equivalent de ASP.Net Ajax Function.createDelegate dans jQuery

je besoin de quelque chose comme ça dans jQuery:

this.$delegateOnClick = Function.createDelegate(this, this.fireOnClick); 

est la méthode jQuery .delegate la voie à suivre?

Ou est-ce ce poste: Controlling the value of 'this' in a jQuery event

Répondre

3

Je pense que vous voulez que la fonction jQuery $.proxy(). Il existe deux formes:

var proxy = $.proxy(someFunction, someObject); // A 
var proxy2 = $.proxy(someObject, someString); // B 

« A » appel retourne une fonction telle que quand elle est appelée, la fonction « someFunction » sera appelée avec tous les arguments que vous avez passé le proxy et « ce » lié à « someObject ". La version "B" est similaire, mais au lieu de vous passer dans une fonction vous passez dans le le nom d'une propriété sur "someObject" qui fait référence à une fonction. Ainsi, si vous avez un objet « widget » avec une fonction appelée « clignote », puis

var blinker = $.proxy(widget, "blink"); 

vous donne une fonction qui appellera la fonction « clignote » sur « widget » (qui est, avec « ce » lié à "widget").

+0

ressemble à ceci pourrait être ce ... LEMME essayer! – Mrchief