您需要使用事件委托,您的编辑按钮是动态创建的并附加到 DOM。但是,当您的点击事件尚不存在时,它们已绑定在 Document ready 上。因此,将事件附加到文档头或在任何时间点存在于 DOM 中的任何其他容器,以便将事件委托给将来从指定容器创建的编辑按钮。
$('.ap_private_party_form').on('click', '.edit', function(){
$(this).closest('.ap_sectionblock').find("fieldset").show();
});
对于 1.7+ 版本的 jquery 使用on()对于旧版本使用live。
更新您的续刊
$('.close-and-show-next').click(function () {
var $this = $(this);
$this.closest('fieldset').hide();
var $block = $this.closest(".ap_sectionblock");
$block.find('.ap_sectionheader').append('<span><input type="button" class="edit" value="Edit"></span>');
$block.next(".ap_sectionblock").find("fieldset").show();
//return false;
});
$('.ap_private_party_form').on('click', '.edit', function () {
$('.ap_sectionblock').find('fieldset:visible').hide(); // Just hide the fieldSets that are visible on click of edit of any so that only one is shown at a time.
$(this).closest('.ap_sectionblock').find("fieldset").show(); // show this ones fieldset
$(this).remove(); // remove the edit button as you don't need it any more on the edit page.
});