Appending html data to an element works but then I can't retrieve it
===

This is driving me insane. I'm attaching response data to the target of a jquery plugin when a preload option is set. It all seems to work a charm except the data I set is inaccessible. When I log `$(elm).data();` I can see that the object was returned with the appropriate data set to the appropriate key. But when I try `console.log($(elm).data('key'));` I get undefined. I also get undefined when I try `var elmData = $(elm).data(); console.dir(elmData.key);`. So I'm logging the object on one line, seeing it in the console, trying to access a property I just confirmed exists and getting `undefined`.

Here is my function:

    this.preloadData = function(folders)
    {
        var getString;
        for(var folder in folders ){
           getString = 'folder='+folders[folder]+'&uri='+uri+'&thumbSide='+options.thumbSide;
           $.get(options.handler, getString,
              function(response, serverStat, xhr)
              {
    		    $self.data(folder, response);	
              });
         }//for
    	console.log($self.data());//Object{ editorial : 'my html data' }
        console.log($self.data('editorial'));//undefined
    } 

I know the namespacing is too simple, I just tried to cut out as many factors as I could to try and understand why this isn't working. I feel like I'm living in the twilight zone. I really hope I'm just being stupid.