3

ワイルドカードの概念を何かに適用する方法と、そうでない場合に適用する方法を見つけようとしています。

現在$('.zm_name[rel!="'+keyed+'"]').parent().hide();、探しているキー付きの値と正確に一致しないものをすべて非表示にするものがありますが、これは正常に機能します。ただし、キー値が正確な場合にのみ機能します。だから私はそれを探していますkeyed*が、文字列の先頭に等しくないものはすべて非表示にします。

試し$('.zm_name[rel^!="'+keyed+'"]').parent().hide();てみましたが、構文エラーしか発生しませんでした。API の jquery セレクター セクションを参照しましたが、探しているものが正確に見つからないようです。だから、この方法を組み合わせる実際の方法はあるのだろうか?

4

2 に答える 2

3

これを試して

$('.zm_name:not(.zm_name[rel^="'+keyed+'"])').parent().hide();

//また

$('.zm_name:not([rel^="'+keyed+'"])').parent().hide();​​​​​​​

デモ

于 2012-10-01T20:27:02.010 に答える
1

非常に長いセレクターは混乱を招き、冗長になる可能性があるため、通常は避けています。filter次の方法を試してください。

$('.zm_name').filter(function(){ 
  return !(new RegExp('^'+ keyed)).test(this.rel); 
});
于 2012-10-01T20:31:14.293 に答える