Do you think we could do something similar to what I'm doing for the [follow/unfollow button](https://github.com/opscode/supermarket/pull/213/files#diff-710d8f0c71a1a106167a26d9d659d6e8R7) here rather than manipulating the DOM to show hide/elements based on state? Basically rather than manipulating the DOM I'm letting the server do all of the hard work upon ajax:success I'm grabbing the state of the DOM without a page reload using `$.get` then replacing only the elements that need to be updated in this case I think it would just be the `.cookbook-urls` div.

So it might look something like this.

```javascript
$(".manage-cookbook-urls .edit_cookbook").on('ajax:success', function(event, data, status, xhr) {
  $.get('', function() {
    $('.cookbook-urls').replaceWith($(data).find('.cookbook-urls'));
  });
});
```

I'm pretty sure that'd allow you to get rid of most of this code below.