If the order of elements may be changed you should find the specific dt then gets its id attribute. attr(), by itself, will only return the first matching id found so is not a robust solution:
$(myHtml).filter('dt').attr('id')
You have to use filter(), and not find() as they are all top level elements in that HTML snippet.
http://jsfiddle.net/TrueBlueAussie/ghwzsao0/
The safer alternative, if the content can vary, is to wrap the html in another temp element that find() can be used with:
$('<div>').html(myHtml).find('dt').attr('id')
http://jsfiddle.net/TrueBlueAussie/ghwzsao0/1