我正在尝试在我的网站上执行临时快速黑客攻击,因为我需要隐藏页面上的几个跨度,并且不希望必须通过所有php来永久删除它们。所以只想用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
等内容,但我不知道如果内容等于数字,如何隐藏,是否有人能指出正确的方向?< / p>
答案 0 :(得分: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只狗”这样的东西,你需要做一些事情有点不同。
答案 1 :(得分:0)
$('span').each(function(){
if($(this).text().match(/^([1-9])$/))$(this).hide()
});
答案 2 :(得分:0)
好吧我猜我迟到了。不过这是我的理由:
$('span').each(function(index, value) {
if($(this).html() > 0 && $(this).html() < 10 )
{
$(this).hide();
}
});