0
$(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();
   }
});

エラー Uncaught ReferenceError: パス名が定義されていません

上記の更新されたコード---

上記のコードvar numbersは、数値がuの後にあるかどうかを確認する正規表現のようなもの(正規表現の経験はあまりありません)を書いてみました。コードは、パス名に u が含まれているかどうかをチェックすることを除いて、その意味で機能します。そのようなリンクが/forumあり、このコードが実行されているため、uで始まるかどうかのみを確認したいのですが、これは私が望んでいるものではありません。このようなURLでのみ実行するには、このコードが必要です

/u1

/u2

/u3

/u4

助言がありますか?

わかりましたので、以下の両方の回答はまだ機能していません..私の友人がコードをくれましたが、それがエスケープされているとは思わないので、見てください

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

2 に答える 2

2

uで始まるかどうかを確認したいだけです

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

また

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

uの後に 1 つ以上の数字が続くことを確認する必要がある場合は、次のようにします。

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

コード スニペット全体は次のようになります。

if( /^u\d+/.test(window.location.pathname) ){
  $('#content').prependTo('#container').css('marginRight','0px');
  $('#page_wrapper').remove();
}
于 2013-03-06T14:19:39.800 に答える
0
var regex = /^u[0-9][0-9]*/;
regex.test(checkif);

これは、「u」+一連の数字の形式であるかどうかをテストします

編集:カイルのコメントに従って正規表現関数を修正しました。おそらくもっと簡潔な方法がありますが、うまくいくはずです。

于 2013-03-06T14:24:07.463 に答える