Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 在移除按钮之前捕获它?_Jquery_Jquery Ui_Jquery Selectors - Fatal编程技术网

Jquery 在移除按钮之前捕获它?

Jquery 在移除按钮之前捕获它?,jquery,jquery-ui,jquery-selectors,Jquery,Jquery Ui,Jquery Selectors,我已经创建了一个JSFIDLE,因为我认为它将是显示问题的最佳方式。基本上,脚本可以更改按钮,但在按钮更改后,标题不会更改。我想这是因为原来的按钮被替换了: 是否可以以某种方式捕获原始按钮,以便即使在按钮被移除后也可以使用它来移除或替换标题?尝试如下更改您的功能 function some_function( that ) { var $outerDiv = that.closest('.outer_div'); $outerDiv.find('.main').empty().

我已经创建了一个JSFIDLE,因为我认为它将是显示问题的最佳方式。基本上,脚本可以更改按钮,但在按钮更改后,标题不会更改。我想这是因为原来的按钮被替换了:


是否可以以某种方式捕获原始按钮,以便即使在按钮被移除后也可以使用它来移除或替换标题?

尝试如下更改您的功能

function some_function( that ) {
    var $outerDiv = that.closest('.outer_div');
    $outerDiv.find('.main').empty().append( '<input type="button" id="some_other_button" value="click me 2" />' );    
    $outerDiv.find('.header').empty().append( "new header data" );
}
函数某个函数(即){ var$outerDiv=that.closest('.outer_div'); $outerDiv.find('.main').empty().append(''); $outerDiv.find('.header').empty().append(“新的头数据”); }

尝试如下更改您的功能

function some_function( that ) {
    var $outerDiv = that.closest('.outer_div');
    $outerDiv.find('.main').empty().append( '<input type="button" id="some_other_button" value="click me 2" />' );    
    $outerDiv.find('.header').empty().append( "new header data" );
}
函数某个函数(即){ var$outerDiv=that.closest('.outer_div'); $outerDiv.find('.main').empty().append(''); $outerDiv.find('.header').empty().append(“新的头数据”); }

之所以发生这种情况,是因为从DOM中删除元素时,元素不再存在。但是,您可以“缓存”父
div
元素

function some_function( that ) {
    var div = that.closest('.outer_div');
    div.find('.main').empty().append( '<input type="button" id="some_other_button" value="click me 2" />' );     
    div.find('.header').empty().append( "new header data" );
}​
函数某个函数(即){ var div=最近的('.outer_div'); div.find('.main').empty().append(''); div.find('.header').empty().append(“新的头数据”); }​
演示:

之所以发生这种情况,是因为当您从DOM中删除元素时,元素不再存在。但是,您可以“缓存”父
div
元素

function some_function( that ) {
    var div = that.closest('.outer_div');
    div.find('.main').empty().append( '<input type="button" id="some_other_button" value="click me 2" />' );     
    div.find('.header').empty().append( "new header data" );
}​
函数某个函数(即){ var div=最近的('.outer_div'); div.find('.main').empty().append(''); div.find('.header').empty().append(“新的头数据”); }​ 演示:

您可以使用
外部div
元素()

$('some#u按钮')。live('click',function(){
一些_函数($(this));
});
函数某个函数(那){
var$outer_div=最接近的('.outer_div');
$outer_div
.find(“.main”)
.empty()
.append(“”)
(完)
.find(“.header”)
.empty()
.append(“新标题数据”);
}
还要注意函数。;)

您可以使用
outer_div
元素()

$('some#u按钮')。live('click',function(){
一些_函数($(this));
});
函数某个函数(那){
var$outer_div=最接近的('.outer_div');
$outer_div
.find(“.main”)
.empty()
.append(“”)
(完)
.find(“.header”)
.empty()
.append(“新标题数据”);
}

还要注意函数。;)

你所说的“捕获”是什么意思?我只希望函数中的第二行能够工作,即使在按钮被移除之后。不知道如何描述“捕获”。可能捕获按钮的实例?为什么需要捕获按钮?您没有从按钮标记中提取任何信息,只是将其用作未更改标记的选择器。您所说的“捕获”是什么意思?我只希望函数中的第二行能够工作,即使在删除按钮之后也是如此。不知道如何描述“捕获”。可能捕获按钮的实例?为什么需要捕获按钮?您并没有从按钮标记中提取任何信息,您只是将其用作未更改标记的选择器。