2011-10-27 14 views
1

私が知る限り、私は正しい使用法の書式:http://api.jquery.com/multiple-attribute-selector/に従っていますが、何らかの理由で私のコードが動作していません。各属性は互いに独立して正常に動作します(つまり、 $(".tonight_stat_peopleThumbs li[srcid="+srcid+"]")が動作し、$(".tonight_stat_peopleThumbs li[style*=inline-block]")が機能します)。ここでjQuery複数の属性セレクタが動作していない:/

はJavaScriptで私の関数である。

<ul activepage="1" class="tonight_stat_peopleThumbs" style="width:171px"> 
    <li id="myid" class="myclass" ptype="people" ptime="11101101" style="display:inline-block;"> 
    <a href="http://domain.com/users/#.php"> 
     <img src="https://graph.facebook.com/#/picture" /> 
    </a> 
    </li> 
</ul> 

NOTE: The '#' are inserted for privacy, assume they are fbid numbers. 

答えて

3

CSS allows attribute selectors without quotesながら、すべてのjQuery exampleで引用符があること:ここでは

hidePatrons = function(srcid) { 
    $(".tonight_stat_peopleThumbs li[srcid="+srcid+"][style*=inline-block]").each(function(){ 
     $(this).css({"display" : "none"}); 
    }); 
} 

は、HTMLからの作品です。私の経験では、jQueryは引用符なしで確実に選択されていません。

/* Good for CSS, bad for jQuery */ 
[foo=bar] 

/* Good for both */ 
[foo="bar"] 
+1

バハハハ、あなたは美しいです!それがすべてです! xDありがとう! :D – Matt

1

引用を気に

$('.tonight_stat_peopleThumbs li[srcid="' + srcid + '"][style*="inline-block"]') 
  • をお試しください!
+1

くそーiPhone - 応答は永遠にかかる! – vzwick

+1

そしてバックティックキー!それはどこにある? >:/ – kojiro

+0

@kojiroそれはまさに私が毎回自分に尋ねていることです。 – vzwick

0

私はあなたが「id」属性に

0

を検索するために探していると仮定して、私は「SRCID」属性が表示されていないli[id="+srcid+"]li[srcid="+srcid+"]を変更してみてください、あなたはこの方法のようにしてみてくださいすることができますか?あなたのHTMLコードのために、以下はうまくいきます。

hidePatrons = function(srcid) { 
     $("#tonight_stat_peopleThumbs li[ptype=people][style*=inline-block]").each(function(){ 
      $(this).css({"display" : "none"}); 
     }); 
    } 

ノートは、IDのためである、とはクラス用です。私はを変更しました。からおよびからptype =人あなたのコードから。

+0

それは私の部分のタイプミスでした。私はサンドボックスとライブを持っていますが、間違ったものをここに入れてください。それを私の上で変更しました。 :) – Matt

関連する問題