teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

1

例示URLの修正

2020/04/29 01:58

投稿

mimimi7
mimimi7

スコア16

title CHANGED
File without changes
body CHANGED
@@ -1,27 +1,27 @@
1
1
  複数ページにまたがる記事コンテンツの現在のページのURLを取得し、そのURLの一部を置換して出力させたいです。
2
2
 
3
3
  取得URL
4
- https://hogehoge.com/pagetype/pageID/page/paged/
4
+ https://example.com/pagetype/pageID/page/paged/
5
5
  (pageIDには記事コンテンツごとの固有の数値が、pagedには現在のページ数が入ります。)
6
6
 
7
7
  このURLのpaged(現在のページ数)を、1から指定の数値までの連番に置き換えます。
8
8
 
9
9
  この時、ほとんどのページでは正しく取得し、置換できるのですが、pageIDの末尾とpagedの数値が同じになったとき、pagedが置換されず、pageIDの末尾が置換されてしまいます。
10
10
 
11
- 例)https://hogehoge.com/pagetype/116/page/6/
11
+ 例)https://example.compagetype/116/page/6/
12
12
  この/page/6/を1~7までの連番に置換したいとき、
13
13
 
14
- https://hogehoge.com/pagetype/116/page/1/
14
+ https://example.com/pagetype/116/page/1/
15
- https://hogehoge.com/pagetype/116/page/2/
15
+ https://example.com/pagetype/116/page/2/
16
16
 
17
- https://hogehoge.com/pagetype/116/page/7/
17
+ https://example.com/pagetype/116/page/7/
18
18
 
19
19
  となるべきはずが、
20
20
 
21
- https://hogehoge.com/pagetype/111/page/6/
21
+ https://example.com/pagetype/111/page/6/
22
- https://hogehoge.com/pagetype/112/page/6/
22
+ https://example.com/pagetype/112/page/6/
23
23
 
24
- https://hogehoge.com/pagetype/117/page/6/
24
+ https://example.com/pagetype/117/page/6/
25
25
  と、pageIDの末尾が置換されてしまう
26
26
 
27
27
  以下のコードを使って置換しています。
@@ -40,7 +40,7 @@
40
40
  }
41
41
  ```
42
42
  また、replaceで置換する場所の指定を、.slice()から.split()に変えてみたところ、今度はpageIDの下2ケタ目がpagedと一致したときにpageIDが書き換わってしまいます。
43
- 例)https://hogehoge.com/pagetype/161/page/6/を取得したら、/pagetype/111/page/6/~/pagetype/171/page/6/に置換される
43
+ 例)https://example.com/pagetype/161/page/6/を取得したら、/pagetype/111/page/6/~/pagetype/171/page/6/に置換される
44
44
  ```javascript
45
45
  var nowURL = location.protocol + '//' + location.host + location.pathname; //現在のURL
46
46
  var paegmax = //現在の記事の最大ページ数をページネーションから取得してます(省略)