2016-01-22 105 views
0

我有一个两个步骤的代码。下面的语句:jQuery append不能在双HTML中工作

步骤1:如果id="container"没有文本,然后id="container"将自动生成文本如果<span id="test"></span>没有文本,然后id='parent'将这个代码$("#parent").Remove();

第2步删除没有数据用此代码$("#container").append("NO DATA");

在Atep 1工作良好。但在这个步骤2不起作用。 我还不得不将append()更换为html(),并且无法工作。 解决方案是什么?

我的代码:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 

<div id='container'> 

<div id='parent'> 
<b>Age:</b> <span id='test'></span> 
</div> 

</div> 

<script> 
if($("#test").html()==""){ 
$("#parent").remove(); 
} 

if($("#container").html()==""){ 
$("#container").append("NO DATA"); 
} 
</script> 

回答

0

空格在容器中留下了这么html()不为空,你需要使用$.trim()去除左空格有。这里是jsFIddle给你。

if($("#test").html()==""){ 
 
$("#parent").remove(); 
 
} 
 
if($.trim($("#container").html())==""){ 
 
$("#container").append("NO DATA"); 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div id='container'> 
 

 
<div id='parent'> 
 
<b>Age:</b> <span id='test'></span> 
 
</div> 
 

 
</div>

+0

完美,我需要向你学习。感谢你们对我的帮助 :) – Kangsigit