在函数中附加分离的div

时间:2014-04-23 13:39:39

标签: jquery append detach

我试图在分离后重新添加一些div,但它现在已经工作了好几个小时......我找不到我的错误......

Sitution:

有一个带有livesearch函数的输入字段(onkeydown).. 在我查询某些数据的功能上。让我说没有livesearch的原始页面有2个div:

div id="a"div id="b"

在livesearch之后还有一个div id="c" ...

我只想显示id =“c”,但保持id =“a”和id =“b”(但不向用户显示)..我不能用户hide()和show()因为这会损坏div的应用程序..

我尝试使用detach和appendTo ..代码接近工作..但不是100%..

我将旧的div包装成一个名为old_div的类

所有新的livesearch结果都获得了livesearch_results类


function livesearch(value){

 var kasten = $('.original_div');

// first keydown

if($('.old_div').length == 0 && $('.livesearch_result').length == 0 ){

   kasten.addClass('old_div');

var detached = $('.old_div').detach();      


}

.... do the livesearch ... everything works fine ... but 

if(value == ""){

$('.livesearch_result').remove();

detached.appendTo("#rechteSeite");

return;

}

___________________________________________

因为它是一个函数,如果值==“”

,它将调用未定义的变量

...所以要清楚......一切都有效,直到值==“”......我只是找不到一种方法来重新附加旧的div id =“a”和“b”,因为变量未定义。在函数内(在按键上)...在这个函数中再次声明它不起作用cooz .old_div allready已经在第一个keydown分离了...我真的很感激一些建议......

可能会提出一个不同的解决方案......它不是必须只考虑分离和附加......但我在这里没有想到:/ 非常感谢你

1 个答案:

答案 0 :(得分:0)

如果其他一切都是正确的,那么通过将'detached'作为全局变量来解决您的直接问题。

在函数外部声明它,或者将其作为window.detached访问。