弄清楚路径名是否以u开头

时间:2013-03-06 14:16:53

标签: javascript jquery indexof

$(function() {
   var s = $('#field_id5 div.field_uneditable').html();
     if(s == "+Member") {
       var path = window.location.pathname;
 if( /^u\d+/.test(path) ){
    $('#content').prependTo('#container').css('marginRight','0px');
    $('#page_wrapper').remove();
   }
 $('#profile-advance-left').hide();
   }
});

获取错误未捕获 ReferenceError:未定义路径名

上面的更新代码---

var numbers上面的代码我尝试编写一个正则表达式的东西(在正则表达式中不是很有经验),它会检查数字是否在你之后。代码在某种意义上起作用,除了它检查你是否在路径名中。我只想检查是否以u开头,因为我有一个像/forum这样的链接,这个代码运行的并不是我想要的。我需要这个代码才能在这样的网址上运行

/u1

/u2

/u3

/u4

有什么建议吗?

好的,所以下面的两个答案仍然无法正常工作..我的一个朋友给了我一个代码,但我不相信它是逃脱请看看

if(//?ud+/.test(window.location.pathname)){
  $('#content').prependTo('#container').css('marginRight','0px');
   $('#page_wrapper').remove();
 }

2 个答案:

答案 0 :(得分:2)

  

我只想检查是否以u

开头
if( window.location.pathname.indexOf('u') == 0 ) ...

if( /^u/.test(window.location.pathname) )...

如果你需要确保u后跟一个或多个数字,我会这样做:

if( /^u\d+/.test(window.location.pathname) ) ...

整个代码段将是:

if( /^u\d+/.test(window.location.pathname) ){
  $('#content').prependTo('#container').css('marginRight','0px');
  $('#page_wrapper').remove();
}

答案 1 :(得分:0)

var regex = /^u[0-9][0-9]*/;
regex.test(checkif);

这将测试它是否采用“u”+数字系列

的格式

编辑:根据凯尔的评论修正了正则表达式函数。可能有一种更简洁的方式,但它应该有效。