What's happening is that the qt-reference is being updated each iteration in your outer loop, and when the first Ajax-response to the Youtube API is completed, the outer loop has already reached the end.
You will have to store each qt-reference with each inner Ajax-request so the requests will update the relevant LI.
Easiest way to do this is to create a function that returns a function that uses a parameter of the outer function:
var renderLi = function (qt, el) {
return function(videoFeed) {
...
};
};
...
$.getJSON("http://gdata.youtube.com/feeds/api/videos?q=" + qt + "&v=2&start-index=1&max-results=1&orderby=relevance&format=5&alt=jsonc&callback=?", renderLi(qt, li));