2012-01-05 3 views
0

Я знаю, что есть множество примеров того, как показать или скрыть div на основе щелчка или наведения или какого-либо пользовательского события. Я ищу образец java-скрипта или образец jquery, который показывает или скрывает div, основанный на погоде, который имеет значение div. Другими словами. Я показываю список концертов в вашем регионе. Если в вашей области нет концертов, вместо этого следует отобразить другой div: «в вашем районе нет концертов».Показать или скрыть Div, если у одного Div есть значение?

Это должно произойти при загрузке страницы. Без участия пользователя.

Кто-нибудь когда-либо использовал что-то вроде tis или a = может указать мне ссылку, которая показывает, как это сделать?

Благодаря Oceantrain

+0

гм ... трудно сказать, без разметки код. Не могли бы вы разместить какой-то код или демо? возможно, http://jsfiddle.net? –

+0

Предполагая, что список концертов генерируется PHP/MySQL или аналогичным ... не можете ли вы просто проверить количество концертов для вывода, тогда, если 0, вывести строку «no concerts in your area» или вывести целое новый div с этим текстом и другим классом и т. д. – SmokeyPHP

+0

Asp.Net MVC. У меня нет концертов в области отображения области. И никаких результатов не видно, однако есть div с описанием, отображаемым также. Если список концертов пуст, скройте описание div, не показывайте концерт div. Это то, что мне нужно. –

ответ

0

Есть тонны примера для этого
Обычно люди используют это, чтобы проверить/условие на значение.

 if($("this").val().length === 0) { 
    $("this").hide() 


Во-вторых

if(!$("this").val()) { $("this").hide() } 


С вы можете использовать текст() или HTML() ...
Что-то вроде
var text = jQuery("div").text();

2
$(function(){ 
    var $div = $("#div1"); 
    if(!$div.html().length) 
     $div.hide(); 
}); 

Если вы хотели бы использовать селектор класса, вы можете использовать следующий код:

$(function(){ 

    var $div = $(".foo"); 

    $.each($div, function(i,v){ 
     var _$div = $(v); 
     if(!_$div.html().length) 
      _$div.hide(); 
    }); 
}); 

работает демо здесь:

http://jsfiddle.net/tugberk/mAaDY/

+0

@JosephMarikle время для меня ложиться спать Я думаю: D спасибо! починил это. – tugberk

+0

добро пожаловать. :) Я думаю, что мы все делаем такие ошибки (по крайней мере, я знаю, что у меня есть> _>) –

+0

Я не могу заставить их работать. Должен ли div1 быть идентификатором? может ли это быть классом? как: $ (function() { var $ div = $ (". concertbody"); if (! $ div.html(). length) $ div.hide(); }); –

1
$(function() { 
    var $div = $("#div1"); 
    if($.trim($div.html()).length == 0) { 
     $div.hide(); 
    } 
}); 
+0

Я создал это, прежде чем буксир изменил его ответ, но у меня также есть функция обрезки, чтобы убедиться, что все возможные белые пространства обрезаны в проверке длины. – evasilchenko

+0

Поздравляю вас тогда :) – tugberk

+0

Hells yeah brotha, также я мог бы устать сам, но разве ваш код не должен иметь сравнение длины, так как длина не возвращает логическое значение? – evasilchenko

0
$(function(){ 
if($("#div1").is(":empty")) 
$("#div1").css("display","none"); 
$("#div2").css("display","block"); 
}); 

Это должно быть одним из способов, как заставить его работать. Конечно, вы должны ввести некоторую логику, которая решит, какой div будет отображаться.

Смежные вопросы