冲突

2017-03-22 127 views
1

我有这样的HTML页面:冲突

<div class="rigaEven"> 
       <div class="col1"> 
        <p class="room">AULA B</p> 
        <p class="where">XXX</p> 
       </div> 
       <div class="col2 half"> 
        <p class="when">09:00 - 11:00</p> 
       </div> 
       <div class="col3"> 
        <p class="what">WHAT.</p> 
        <p class="type">Insegnamento</p> 
        <p class="who">PROF</p> 
       </div> 
      </div> 

      <div class="rigaOdd"> 
       <div class="col1"> 
        <p class="room">AULA WHAT</p> 
        <p class="where">XXX</p> 
       </div> 
       <div class="col2 half"> 
        <p class="when">09:00 - 11:00</p> 
       </div> 
       <div class="col3"> 
        <p class="what">KKK</p> 
        <p class="type">Insegnamento</p> 
        <p class="who">PROF</p> 
       </div> 
      </div> 
      <div class="rigaEven"> 
       <div class="col1"> 
        <p class="room">AULA MAGNA</p> 
        <p class="where">XXX</p> 
       </div> 
       <div class="col2 half"> 
        <p class="when">09:00 - 11:00</p> 
       </div> 
       <div class="col3"> 
        <p class="what">SSS</p> 
        <p class="type">Insegnamento</p> 
        <p class="who">PROF</p> 
       </div> 
      </div> 
      <div class="rigaOdd"> 
       <div class="col1"> 
        <p class="room">AULA D</p> 
        <p class="where">XXX</p> 
       </div> 
       <div class="col2 half"> 
        <p class="when">09:00 - 13:00</p> 
       </div> 
       <div class="col3"> 
        <p class="what">LAB</p> 
        <p class="type">Laboratorio</p> 
        <p class="who">PROF</p> 
       </div> 
      </div> 

在我的Android活动我隐藏和显示基于P的值DIV(rigaEven,rigaOdd) (类 “是什么” ),这是方法:

public String showActivity(String filter){ 
    return "javascript:(function(){" + 
      "  $(\".rigaEven\").hide();" + 
      "  $(\".rigaOdd\").hide();";+ 
      "  $(\".rigaEven:contains("+filter+")\").show();" + 
        "  $(\".rigaOdd:contains("+filter+")\").show();" + 
        "  $(\".what:contains("+filter+")\").show();"+ 
    "})()"; 
} 

但是如果p教室,并包含“AULA WHAT” p类也包含什么“做什么”仍然可见两个,但我希望你能看到的只是什么是字符串传递包含什么在大厅里,我怎么办?

回答

0

不幸的是,你不能这样做(匹配确切的内容)与选择器,所以你需要使用filter函数。见例如this post

为了您rigaEven元素,例如,你将需要:

$(".rigaEven").filter(
    function(){ 
     return "filter" === $(this).text(); 
    } 
).show(); 

当然,这是对编码作为字符串大乐趣。以下是此示例的一个(未验证)尝试:

"$(\".rigaEven\").filter(function(){return \"" + filter + "\" === $(this).text();}).show();" 

我会让剩下的转换乐趣由您决定。 :-)