本帖最后由 walunwine4 于 2013-05-10 22:33:57 编辑

解决方案 »

  1.   

    if($(".name").text()=="")
    {
    $(".name").hide();
    $(".date").hide();
    }
      

  2.   

    刚刚测试了你回复的代码,不好用。即使直接在HTML环境下也没有效果
      

  3.   


    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
    <script type="text/javascript">
    $(function(){
    //alert($("li[class='name']").text());
    if($("li[class='name']").text()==""){
    $("li").hide();
    }else{
    $("li").show();
    }
    })
    </script>
    <li class="name">4345</li>
    <li class="date">2013-01-01</li>
      

  4.   

    刚刚测试了你回复的代码,不好用。即使直接在HTML环境下也没有效果<script type="text/javascript" src="http://code.jquery.com/jquery-latest.js"></script> 
    <script type="text/javascript">
    $(function(){
    if($(".name").text()=="")
    {
    $(".name").hide();
    $(".date").hide();
    }
    });
    </script><ol>
    <li>111111111</li>
    <li class="name"></li>
    <li class="date">2013/5/10</li>
    <li>222222222</li>
    </ol>
      

  5.   

    这个貌似只对一个管用.能不能让他对整个页面上的都有效果呢?我是JQUERY的新手,还在学习中.麻烦了.
      

  6.   

    什么叫对整个页面上的都有效果?你一个页面上有几个li?
    我这段代码的意思是,只要class=name的li有值就显示页面上所有的li,反之隐藏。
      

  7.   


    我的页面是
    DIV
    下面都是以UL为单位的
    <ul class="news_server">
    <li class="name"></li><li class="date">2013-04-18</li>
    <li class="content">
    </li>
    </ul>
    每个页面起码有5个左右。所以才希望能够把页面上所有<li class="name"></li>中间没有文字的都隐藏起来我也在奇怪这个事,因为我用你的代码用HTML测试的时候就能够生效,但是放在PHP下就不行了。
      

  8.   

    你是想只要class=name的li没有值就把所有的li隐藏?
    还是不论class是什么只要它没有值就隐藏这个li(仅隐藏自身)?
      

  9.   

       <?php
     
      $news_list_by_author_sql='select n.article_id,n.authors_id,n.news_last_modified, nt.news_article_name, nt.news_article_text from ' . TABLE_NEWS_ARTICLES . ' n left join ' . TABLE_NEWS_ARTICLES_TEXT . ' nt on (n.article_id = nt.article_id and nt.language_id = \'' . (int)$_SESSION['languages_id'] . '\') and n.authors_id = n.news_status = \'1\'' . ' order by n.article_id DESC limit 4';
      $news = $db->Execute($news_list_by_author_sql);  if ($news->RecordCount() > 0) {
        $i = 0;
        $article_array = array();
        while (!$news->EOF) {
          $article_array[$i] = array(
    'articleId' => $news->fields['article_id'],
     'articledate' => date("Y-m-d",strtotime($news->fields['news_last_modified'])),
    'articleName' => stripslashes($news->fields['news_article_name']),
    'articleText' => stripslashes($news->fields['news_article_text']),
    );
      $i++;
      $news->MoveNext();
        } //end while
      } else {
        $articlesNotFound = true;
      }?>
    <div class="newslist_server">
    <h2 style="line-height:27px;">titles</h2>
     <div class="news_server1"><?php
    // Oh no, no articles were found
    if ($articlesNotFound == true) {
    echo '<strong>'.TEXT_NO_NEWS_ARTICLES.'</strong>';
    } else {
    foreach ($article_array as $newsArticle) {
    ?>
     
     <ul class="news_server">
     <li class="name"><?php echo $newsArticle['articleName']; ?></li>
    <li class="date"><?php echo $newsArticle['articledate']; ?></li> 
    <li class="content"><?php echo $newsArticle['articleText']; ?></li>
     </ul>
    <?php
    }
    }?> 
     <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
    <script type="text/javascript">
        $(function(){
            //alert($("li[class='name']").text());
            if($("li[class='name']").text()==""){
                $("li").hide();
            }else{
                $("li").show();
            }
        })
    </script> 
    </div>
    </div>这个是我页面上的代码因为这个是我页面上的一个文章部分,所以我希望是class=name的li没有值就把他隐藏起来。
    用了你的代码之后没有反应
      

  10.   

    代码稍微变更一下,第一你确定你CLASS=name的值是空的吗?
    如果是,那么把这段代码粘贴到<head></head>标签之间<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
    <script type="text/javascript">
    $(function(){
    if($("li[class='name']").text()==""){
    $("li[class='name']").hide();
    }else{
    $("li[class='name']").show();
    }
    })
    </script>
      

  11.   

    已经加入到头部了,但是没有效果
    值默认是有<?php echo $newsArticle['articleName']; ?>从数据库调用过来的数据,但是可能是因为数据库调用的时候有问题,所以调用过来的是空值
    <ul class="news_server">
    <li class="name"></li>
    <li class="date">2013-04-18</li>
    </ul>
    所以才想到用JQUERY去把这日期隐藏起来.
      

  12.   


    这就是我之前遇到的问题,没办法才来求助JQUERY的
    http://bbs.csdn.net/topics/390454435?page=1#post-394453044
      

  13.   

    因为这个是我页面上的一个文章部分,所以我希望是class=name的li没有值就把隐藏起来。你到底隐藏谁啊?<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
    <script type="text/javascript">
    $(function(){
    alert($("li[class='name']").text());
    if($("li[class='name']").text()==""){
    $("li").hide();
    }else{
    $("li").show();
    }
    })
    </script>告诉我弹出来的结果
      

  14.   

    Search Image MapsSearch Image MapsSearch Image MapsSearch Image Maps弹出来的是有效的那个文章的标题
      

  15.   

    那这个li class='name'标签不就相当于有值了吗,你的需求不是没有值去隐藏吗?有值直接显示不就好了吗?
      

  16.   

    应该这样写
    $(function(){
      $("li[class='name']").each(function(){
        if($(this).text() == "")
          $(this).hide();
      });
    })
    应为 <li class="name"> 有许多个
      

  17.   

    那是我描述的错误了可能.
    因为他是有的是有值,有的没有值
    <ul class="news_server">
     <li class="name">Search Image MapsSearch Image MapsSearch Image MapsSearch Image Maps</li>
    <li class="date">2013-05-06</li>
    <li class="content">adfadfadfadfadfadfadf
    </li> </ul>
    <ul class="news_server">
     <li class="name"></li>
    <li class="date">2013-04-18</li>
     </ul>
    他是这两种情况,所以弄的我也是很头疼,不知道什么方式处理好,无论通过ID还是通过CLASS都会影响到有值的.
      

  18.   


    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
    <script type="text/javascript">
    $(function(){
    $("li[class='name']").each(function(){
    if($(this).text()==""){
    $(this).hide();
    $(this).next().hide();
    }
    });
    })
    </script>