//Save new category information
$(\'.save_cat\').live(\'click\', function() {
cat_id = $(this).attr(\"id\").slice(4);
cat_name = $(this).parent().prev(
You need to capture its value in a variable local to the live
handler.
$('.save_cat').live('click', function() {
var $that = $(this);
// These should be vars.
var cat_id = $that.attr("id").slice(4);
...
$.ajax({ ...
success: function() { $that.html("Edit"); }
FWIW, .delegate is preferred over .live
in jQuery < 1.7, and .on is preferred in jQuery 1.7+]2.