2014-01-23 124 views
1

我想从JQuery中的字符串中删除一些字符串,但它不工作,我的变量看起来一样。Jquery删除字符串

var classes = $("body").attr('class'); 
alert('.side-nav' + classes); 
classes = classes.replace('.side-navblog parent- page- how-it-works-',''); 
$(".side-nav" + classes).css("display","block"); 

当警报类后,我就一直是内容替换,还有.side-navblog父 - 页面级如何,它-工程─这是我不希望的字符串中。

+0

请分享惊动价值 –

+3

为什么不使用'.removeClass'? – elclanrs

+0

也是类属性值可能没有'''所以''.side-navblog父页 - 它如何工作''应该是''side-navblog父页如何工作'' –

回答

1
classes = classes.replace('.side-navblog parent- page- how-it-works-',''); 
                 ^^ double space here 

,或者尝试使用正则表达式

classes = classes.match(/how-it-works-([^$\s]*)/)[1] 
+0

非常好。谢谢 。 – Kiwimoisi

1

尝试正则表达式,

classes = classes.replace(/.side-navblog|parent-|page-|how-it-works-/g, ''); 
1

什么我可以计算出从你的评论是你之前只是“页面级”已经把对空间。除了它应该可以正常工作。

classes = classes.replace('blog parent- page- how-it-works-','');

检查出在这里 - http://jsfiddle.net/Fb367/