I was meaning when trying to call $(this) in the following
circumstance:

        $('a.matrixStatus').matrixStatus({
            urlSuffix: '?action=status_posting',
            onComplete: function() {alert('Callback worked'); alert($
(this).attr('class'));}
        });

When I am trying to pass things to the custom function, using $(this)
does not work.

On Feb 25, 12:28 pm, brian <bally.z...@gmail.com> wrote:
> Something like this? (no pun intended)
>
> obj.click(function() {
>   var self = $(this);
>
>   ...
>
>    defaults.onComplete(self);
>
>
>
> On Wed, Feb 25, 2009 at 3:11 PM, Nic Hubbard <nnhubb...@gmail.com> wrote:
>
> > I have built a custom callback into my plugin, here is an example:
>
> >  $.fn.matrixStatus = function(options) {
> >    var defaults = {
> >      urlSuffix: '?action=live',
> >          onComplete: function() {}
> >    };
>
> >    var options = $.extend(defaults, options);
>
> >    return this.each(function() {
> >      var obj = $(this);
> >          var itemDesc = obj.attr('rel');
> >      var itemId = obj.attr('id');
> >      var itemHref = obj.attr('href');
> >      obj.click(function() {
> >      if (!itemDesc == '') {
> >                  var question = confirm('Are you sure you want to change 
> > the status
> > of "'+itemDesc+'"?');
> >          } else {
> >                  var question = confirm('Are you sure you want to change the
> > status?');
> >          }
> >        if (question) {
> >          $.ajax({
> >            type: 'POST',
> >            url: itemHref + defaults.urlSuffix
> >          });
>
> >                  // Run our custom callback
> >                  defaults.onComplete();
>
> >        }
> >        return false;
>
> >      });
>
> >    });
>
> >  };
>
> > For some reason when I try to use that function for a custom callback,
> > it won't allow me to get the jQuery object that the plugin is
> > targeting, so using $(this) within the onComplete function doesn't
> > work and give me errors.  Any idea why this would be?

Reply via email to