0

私は現在、次のものを持っています:

$ul.append('<li>' + 
'<a href="setlocale.aspx?returnURL=default.aspx&localesetting=' + 
this.slice(0) + '">' + this.slice(3) + '</a>');

私のURLが次で終わるとしましょう:/c-577-camping.aspx

jquery でこの値を使用するにはどうすればよいですか? に変更default.aspxする必要がc-577-camping.aspxあり、Web サイトが次のwww.site.com/c-517-cookers.aspx場合は追加する必要があります。

http://www.site.com/c-517-cookers.aspx?setlocale.aspx?returnURL=c-517-cookers.aspx&localesetting=fr-FR

4

3 に答える 3

1

パスを取得するには、window.location.pathname を使用できます。

$(document).ready(function() {
  var pathname = window.location.pathname;

  $ul.append('<li>' + '<a href="setlocale.aspx?returnURL=' + pathname + '&localesetting=' + this.slice(0) + '">' + this.slice(3) + '</a>');
});
于 2012-07-31T12:30:26.060 に答える
1

location.pathnameスラッシュが含まれているので、試してください:

'<a href="setlocale.aspx?returnURL='+ location.pathname.replace(/\//g,'') +'&localesetting=' +....

パス名に get パラメーターが既に含まれている可能性がある場合は、 を使用encodeURI(location.pathname.replace(/^\//,'')して最初のスラッシュだけを置き換えるか、 を使用location.pathname.replace(/\//g,'').split('?')[0]してパラメーターを切り取る必要があります。

PS: を使用しないでくださいwindow.location.pathname。必要はありません。実際にはwindow、グローバル (名前のない) オブジェクトへの循環参照であるため、使用しない方がわずかに高速です。

于 2012-07-31T12:42:07.207 に答える
0

使ってみてはどうですか

window.location.pathname

?

完全なコード:

$ul.append('<li>' + '<a href="setlocale.aspx?returnURL=' + window.location.pathname + '&localesetting=' + this.slice(0) + '">' + this.slice(3) + '</a>');
于 2012-07-31T12:30:06.437 に答える