title: How come $(this) is undefined after ajax call
body: <p>I am doing an ajax request when an anchor tag is clicked with an ID set to href. Btw, this anchor tag is dynamically created.</p>
  
  <pre><code>&lt;a href="983" class="commentDeleteLink"&gt;delete&lt;/a&gt;
  </code></pre>
  
  <p>When the anchor tag is clicked the following code is executed:</p>
  
  <pre><code>    $('.commentDeleteLink').live('click', function(event) {
          event.preventDefault();
          var result = confirm('Proceed?');
  
          if ( result ) {
              $.ajax({
                  url: window.config.AJAX_REQUEST,
                  type: "POST",
                  data: { action       : 'DELCOMMENT',
                          comment      : $('#commentText').val(),
                          comment_id   : $(this).attr('href') },
                  success: function(result) {
                      alert($(this).attr('href'));
                      //$(this).fadeOut(slow);
                  }
              });
          }
      });
  </code></pre>
  
  <p>When I tried to display $(this).attr('href') it says it's "undefined". What I really want to do is fadeOut the anchor tag but when I investigated the value of $(this) it is "undefined".</p>
  
  <p>What could be wrong with the snippet above?</p>