Ich habe zwei Klick-Ereignisse, die fast ähnlich sind, aber nicht ganz. Ich frage mich, wie man sie am besten refaktoriert:Refactor diese JavaScript-Code
$('.remove_fields.dynamic').live('click', function(e) {
var $this = $(this);
var after_removal_trigger_node = $this.closest(".nested-fields").parent();
trigger_removal_callback($this);
e.preventDefault();
$this.closest(".nested-fields").remove();
trigger_after_removal_callback(after_removal_trigger_node);
});
$('.remove_fields.existing').live('click', function(e) {
var $this = $(this);
var after_removal_trigger_node = $this.closest(".nested-fields").parent();
trigger_removal_callback($this);
e.preventDefault();
$this.prev("input[type=hidden]").val("1");
$this.closest(".nested-fields").hide();
trigger_after_removal_callback(after_removal_trigger_node);
});
Wie Sie feststellen können, gibt es ein gutes Stück Überlappung. Ich frage mich, wie der beste/schönste Weg wäre, diesen Code zu überarbeiten.
Schritt 1: nicht '.live Verwenden Sie()'. Es ist veraltet. –