2015-01-21 3 views
-2

Как написать следующее в JQuery:Как скрыть элемент, если другой элемент содержит любой текст

<div class="one">Hello I am One</div> 
<div id="hello"></div> 

Если .one содержит какой-либо текст, то скрыть hello?

спасибо!

+0

Этот вопрос не показывает никаких исследований; это неясно или не полезно. – niksmac

ответ

0

благодарим за ответы! Это сработало для меня:

if($('.one').text() == '') { 
    $('#hello').hide; 
} 
+0

Ответ на ТС Fogarty лучше, и он ответил несколько дней назад, почему вы не принимаете его ответ? Также будет работать его JavaScript-решение. – niksmac

1

Javascript:

<script> 
var txt = document.getElementsByClassName('one')[0].innerText; 
if(txt == "") { 
    document.getElementById('hello').style.display = "none"; 
} 
</script> 

JQuery:

<script> 
if($('.one').text() == '') { 
    $('#hide').hide(0); 
} 
</script> 
1

Вы можете найти длину текста в данном элементе, а если длина равна 0, то вы знаете, что это пустая.

var one = document.querySelectorAll('.one')[0]; 
var hello = document.getElementById('hello'); 

if (one.innerText.length) { 
    hello.style.display = 'none'; 
} 

В качестве альтернативы вы можете выполнить это с помощью CSS, если #hello появится сразу после .one.

#hello { 
    display: none; 
} 

.one:empty + #hello { 
    display: block; 
} 
Смежные вопросы