If using XFBML, than you should wrap your like button code, eg.
<fb:like href="http://example.com" send="true" width="450" show_faces="true"></fb:like>
into a div or span, eg:
<span class="fb-like">
<fb:like href="http://example.com" send="true" width="450" show_faces="true"></fb:like>
</span>
Than, after gaining new URL via ajax, you have to clear already generated facebook like widget, and replace it with new fb:like code
jQuery('.fb-like').html('<fb:like href="http://example.com" send="true" width="450" show_faces="true"></fb:like>');
And than you have to initialize facebook like button again
FB.XFBML.parse();
Final code could looks like this one. Assume that response contains pure new URL
<span class="fb-like">
<fb:like send="true" width="450" show_faces="true"></fb:like>
</span>
<script type="text/javascript">
$.ajax({
url: "getMeUrl.php",
success: function(url){
$('.fb-like').html('<fb:like href="'+url+'" send="true" width="450" show_faces="true"></fb:like>');
FB.XFBML.parse();
}
});
</script>
Summary:
To refresh facebook like button (or any other facebook XFBML) you have to:
1) destroy existing initialized widget (clear the content of XFBML code wrapper)
2) add new XFBML code into wrapper
3) initialize new code via FB.XFBML.parse();