0

ページ上のいくつかのスパンを非表示にする必要があり、それらを完全に削除するためにすべてのphpを通過する必要がないため、Webサイトで一時的なクイックハックを実行しようとしています. だから、jqueryでそれらを隠したいだけです。

hide()ジャンクションを使用して、1 から 9 までの任意の数字を含むスパンを非表示にしたいと考えています。

だから私が持っているページで>>

 <span>good</span>
 <span>2</span>
   <span>3</span>
      <span>4</span>
         <span>5</span>
             <span>ok</span>

など...で終わるもの<span>bad</span>

私はこれらの約30のリストを持っているので、次のようなことをしたい:

if span contains a number from 1-9, hide it.

hide()以前に関数を使用して物を非表示にしonclickたことがありますが、内容が数値に等しい場合に非表示にする方法がわかりません。誰かが私を正しい方向に向けることができますか?

4

3 に答える 3

1

これを試してください:http://jsfiddle.net/ehmjm/

$("span").filter( function() {
    var num = Number($(this).text());
    return num >= 1 && num <= 9;
}).hide();

または正規表現による:http://jsfiddle.net/ehmjm/2/

$("span").filter( function() {
    return $(this).text().match(/^[1-9]$/);
}).hide();

注: サンプル dom から、数字だけでスパンを非表示にしようとしていると仮定しています。「私は 5 匹の犬を飼っています」のようなものを非表示にする場合は、少し違うことをする必要があります。

于 2013-07-18T12:33:13.417 に答える
0

わかりました、私はパーティーに遅れたと思います。しかし、これは私のアプローチです:

jsfiddle

$('span').each(function(index, value) {
  if($(this).html() > 0 && $(this).html() < 10 )
  {
      $(this).hide();
  }
});
于 2013-07-18T12:53:06.440 に答える
0
$('span').each(function(){
  if($(this).text().match(/^([1-9])$/))$(this).hide()
});

フィドル

于 2013-07-18T12:35:01.410 に答える